diff --git a/custom_testcases/井筒/RESTful接口设计要求/__pycache__/tc_normative_003.cpython-312.pyc b/custom_testcases/井筒/RESTful接口设计要求/__pycache__/tc_normative_003.cpython-312.pyc index 505b9f8..e1d62a0 100644 Binary files a/custom_testcases/井筒/RESTful接口设计要求/__pycache__/tc_normative_003.cpython-312.pyc and b/custom_testcases/井筒/RESTful接口设计要求/__pycache__/tc_normative_003.cpython-312.pyc differ diff --git a/custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py b/custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py index 6a2155d..b14e86c 100644 --- a/custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py +++ b/custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py @@ -6,14 +6,20 @@ from ddms_compliance_suite.utils import schema_utils class TimeFormatCheckTestCase(BaseAPITestCase): id = "TC-RESTful-003" name = "时间字段ISO 8601格式检查" - description = "验证返回的时间字段是否遵循 YYYY-MM-DDTHH:MM:SS+08:00 的ISO 8601格式。此检查为静态检查,验证规范中`string`类型且`format`为`date-time`的字段是否包含推荐的`pattern`。" + description = "验证返回的时间字段是否遵循 ISO 8601 格式。此检查为静态检查,会检查规范中 `format` 为 `date-time` 的字段,以及常见的时间字段名(如 createTime, update_time 等),是否包含推荐的 `pattern`。" severity = TestSeverity.MEDIUM tags = ["normative", "schema", "time-format"] def __init__(self, endpoint_spec: Dict[str, Any], global_api_spec: Dict[str, Any], json_schema_validator: Optional[Any] = None, llm_service: Optional[Any] = None): super().__init__(endpoint_spec, global_api_spec, json_schema_validator, llm_service=llm_service) - # 推荐的 pattern + # 推荐的 pattern self.recommended_iso_8601_pattern = r'^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}([+-]\d{2}:\d{2}|Z)$' + # 常见时间字段名称(小写,用于不区分大小写匹配) + self.time_field_names = { + "createtime", "updatetime", "starttime", "endtime", "publishtime", "timestamp", + "created_at", "updated_at", "create_time", "update_time", "start_time", "end_time", + "gmtcreate", "gmtmodified", "datetime", "date_time", "time" + } def validate_response(self, response_context: APIResponseContext, request_context: APIRequestContext) -> List[ValidationResult]: results = [] @@ -31,7 +37,7 @@ class TimeFormatCheckTestCase(BaseAPITestCase): self._check_schema_properties(media_spec['schema'], results) if not results: - return [self.passed("在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。")] + return [self.passed("在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。")] return results @@ -50,10 +56,24 @@ class TimeFormatCheckTestCase(BaseAPITestCase): prop_spec = self._get_resolved_schema(prop_spec) current_path = f"{path}.{prop_name}" if path else prop_name - # 检查类型为string且格式为date-time的字段 - if prop_spec.get('type') == 'string' and prop_spec.get('format') == 'date-time': + # 检查是否为时间相关字段 + is_datetime_format = prop_spec.get('format') == 'date-time' + is_common_time_name = prop_name.lower() in self.time_field_names + + # 必须是string类型,且满足 (format是date-time) 或 (字段名在常见列表里) + if prop_spec.get('type') == 'string' and (is_datetime_format or is_common_time_name): pattern = prop_spec.get('pattern') - message = f"时间字段 '{current_path}' (format: date-time) " + + # 确定字段来源以提供更清晰的消息 + source_reason = "" + if is_datetime_format and is_common_time_name: + source_reason = f"(format: date-time, name: '{prop_name}')" + elif is_datetime_format: + source_reason = f"(format: date-time)" + else: # is_common_time_name + source_reason = f"(name: '{prop_name}')" + + message = f"时间字段 '{current_path}' {source_reason} " if not pattern: results.append(self.failed( message + f"缺少建议的 `pattern` ({self.recommended_iso_8601_pattern}) 来强制执行ISO 8601格式。", diff --git a/log_stage.txt b/log_stage.txt index 152a6c7..32c2fd7 100644 --- a/log_stage.txt +++ b/log_stage.txt @@ -1,433 +1,433 @@ -2025-06-16 18:36:01,302 - __main__ - DEBUG - 已启用详细日志模式 -2025-06-16 18:36:01,302 - __main__ - INFO - 主输出目录设置为: /Users/zpc01/workspace/zzlh/compliance/test_reports -2025-06-16 18:36:01,302 - ddms_compliance_suite.test_case_registry - INFO - Discovering custom test cases from: ./custom_testcases -2025-06-16 18:36:01,302 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: security_checks 从 ./custom_testcases/security_checks.py -2025-06-16 18:36:01,302 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-002' (敏感字段加密检查) 来自类 'EncryptedFieldsCheck' (路径: ./custom_testcases/security_checks.py) -2025-06-16 18:36:01,302 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: basic_checks 从 ./custom_testcases/basic_checks.py -2025-06-16 18:36:01,302 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-STATUS-001' (基本状态码 200 检查) 来自类 'StatusCode200Check' (路径: ./custom_testcases/basic_checks.py) -2025-06-16 18:36:01,303 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_llm_compliance_check 从 ./custom_testcases/llm/tc_llm_compliance_check.py -2025-06-16 18:36:01,303 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) 来自类 'LLMComplianceCheckTestCase' (路径: ./custom_testcases/llm/tc_llm_compliance_check.py) -2025-06-16 18:36:01,303 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: required_headers_check 从 ./custom_testcases/setup_checks/required_headers_check.py -2025-06-16 18:36:01,303 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-HEADER-001' (必需请求头Schema验证) 来自类 'RequiredHeadersSchemaCheck' (路径: ./custom_testcases/setup_checks/required_headers_check.py) -2025-06-16 18:36:01,303 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_response_schema_format_001 从 ./custom_testcases/井筒/DMS增加核心存储服务API/tc_response_schema_format_001.py -2025-06-16 18:36:01,303 - 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-06-16 18:36:01,303 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_url_version_check_001 从 ./custom_testcases/井筒/DMS增加核心存储服务API/tc_url_version_check_001.py -2025-06-16 18:36:01,303 - 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-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_pagination_params_check 从 ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-DMS-PAGINATION-001' (分页参数检查) 来自类 'PaginationParamsCheckTestCase' (路径: ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py) -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_002 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-002' (资源路径名词检查) 来自类 'ResourcePathNounCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py) -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_003 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-003' (时间字段ISO 8601格式检查) 来自类 'TimeFormatCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py) -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_combined_001 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-001' (核心命名与结构规范检查) 来自类 'CoreNamingStructureTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py) -2025-06-16 18:36:01,304 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_004 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_004.py -2025-06-16 18:36:01,305 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: https_mandatory_case 从 ./custom_testcases/compliance_catalog/security/https_mandatory_case.py -2025-06-16 18:36:01,305 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) 来自类 'HTTPSMandatoryCase' (路径: ./custom_testcases/compliance_catalog/security/https_mandatory_case.py) -2025-06-16 18:36:01,305 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: url_llm_checks 从 ./custom_testcases/compliance_catalog/normative_spec/url_llm_checks.py -2025-06-16 18:36:01,305 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: http_method_usage_case 从 ./custom_testcases/compliance_catalog/normative_spec/http_method_usage_case.py -2025-06-16 18:36:01,305 - 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-06-16 18:36:01,305 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) 来自类 'MissingRequiredFieldQueryCase' (路径: ./custom_testcases/compliance_catalog/error_handling/missing_required_field_query_case.py) -2025-06-16 18:36:01,306 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: invalid_enum_value_case 从 ./custom_testcases/compliance_catalog/error_handling/invalid_enum_value_case.py -2025-06-16 18:36:01,306 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) 来自类 'InvalidEnumValueCase' (路径: ./custom_testcases/compliance_catalog/error_handling/invalid_enum_value_case.py) -2025-06-16 18:36:01,306 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: type_mismatch_body_case 从 ./custom_testcases/compliance_catalog/error_handling/type_mismatch_body_case.py -2025-06-16 18:36:01,306 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) 来自类 'TypeMismatchBodyCase' (路径: ./custom_testcases/compliance_catalog/error_handling/type_mismatch_body_case.py) -2025-06-16 18:36:01,306 - 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-06-16 18:36:01,306 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) 来自类 'MissingRequiredFieldBodyCase' (路径: ./custom_testcases/compliance_catalog/error_handling/missing_required_field_body_case.py) -2025-06-16 18:36:01,307 - 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-06-16 18:36:01,307 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) 来自类 'TypeMismatchQueryParamCase' (路径: ./custom_testcases/compliance_catalog/error_handling/type_mismatch_query_param_case.py) -2025-06-16 18:36:01,307 - 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-06-16 18:36:01,307 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) 来自类 'NumberOutOfRangeCase' (路径: ./custom_testcases/compliance_catalog/error_handling/number_out_of_range_case.py) -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: schema_validation_case 从 ./custom_testcases/compliance_catalog/core_functionality/schema_validation_case.py -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) 来自类 'ResponseSchemaValidationCase' (路径: ./custom_testcases/compliance_catalog/core_functionality/schema_validation_case.py) -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_case_registry - INFO - 已根据 execution_order (主要) 和类名 (次要) 对 18 个测试用例类进行了排序。 -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_case_registry - INFO - 测试用例发现完成。总共注册了 18 个独特的测试用例 (基于ID)。发现并排序了 18 个测试用例类。 -2025-06-16 18:36:01,308 - ddms_compliance_suite.llm_utils.llm_service - INFO - LLMService initialized for model 'qwen-plus' at https://dashscope.aliyuncs.com/compatible-mode/v1 -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_orchestrator - INFO - LLMService initialized with model: qwen-plus. -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_orchestrator - INFO - LLMService is initialized, but no LLM generation flags (--use-llm-for-*) are enabled. -2025-06-16 18:36:01,308 - ddms_compliance_suite.stage_registry - INFO - 开始从目录发现测试阶段: custom_stages -2025-06-16 18:36:01,308 - ddms_compliance_suite.stage_registry - DEBUG - 成功加载模块: ddms_compliance_suite.stages.keyword_driven_crud_stage 从 custom_stages/keyword_driven_crud_stage.py -2025-06-16 18:36:01,308 - ddms_compliance_suite.stage_registry - INFO - 成功注册测试阶段: generic_crud_validation_stage (来自 ddms_compliance_suite.stages.keyword_driven_crud_stage.GenericCRUDValidationStage) -2025-06-16 18:36:01,308 - ddms_compliance_suite.stage_registry - INFO - 测试阶段发现完成。共加载 1 个阶段。发现 0 个错误。 -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_orchestrator - INFO - StageRegistry initialized. Loaded 1 stages. -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_orchestrator - INFO - Orchestrator output directory set to: /Users/zpc01/workspace/zzlh/compliance/test_reports -2025-06-16 18:36:01,308 - __main__ - INFO - 从YAPI文件运行测试: ./assets/doc/井筒API示例_simple.json -2025-06-16 18:36:01,308 - ddms_compliance_suite.test_orchestrator - INFO - 准备从YAPI文件运行测试用例: ./assets/doc/井筒API示例_simple.json -2025-06-16 18:36:01,308 - ddms_compliance_suite.input_parser.parser - INFO - Parsing YAPI spec from: ./assets/doc/井筒API示例_simple.json -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_orchestrator - INFO - TestSummary initialized. -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,309 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} (数据推送接口) -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:01,310 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:01,310 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:01,310 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,310 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,310 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,310 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:01,310 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:01,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:01,311 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:01,311 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,311 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:01,377 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} -2025-06-16 18:36:01,377 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] -2025-06-16 18:36:01,377 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:01,377 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID -2025-06-16 18:36:01,377 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:01,377 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain -2025-06-16 18:36:01,377 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:01,377 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:01,377 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:01,377 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,377 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,377 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,377 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:01,377 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:01,377 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,378 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:01,395 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:01,395 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 -2025-06-16 18:36:01,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 -2025-06-16 18:36:01,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,395 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:01,395 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:01,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:01,395 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:01,395 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:01,395 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:01,395 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,395 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,396 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,396 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:01,396 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'coord', 'location'} -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,396 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:01,413 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 4006, 'message': 'est officia in sit culpa', 'data': {'total': 15, 'list': [{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}]}} -2025-06-16 18:36:01,413 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 4006, 'message': 'est officia in sit culpa', 'data': {'total': 15, 'list': [{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}]}} -2025-06-16 18:36:01,413 - testcase.TC-SECURITY-002 - INFO - response_data:{'total': 15, 'list': [{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}]} -2025-06-16 18:36:01,413 - testcase.TC-SECURITY-002 - INFO - response_data:[{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}] -2025-06-16 18:36:01,413 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123} -2025-06-16 18:36:01,413 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:01,413 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:01,413 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:01,413 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,413 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,413 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,413 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:01,413 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:01,414 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:01,414 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:01,431 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { +2025-06-20 10:38:16,649 - __main__ - DEBUG - 已启用详细日志模式 +2025-06-20 10:38:16,649 - __main__ - INFO - 主输出目录设置为: /Users/zpc01/workspace/zzlh/compliance/test_reports +2025-06-20 10:38:16,649 - ddms_compliance_suite.test_case_registry - INFO - Discovering custom test cases from: ./custom_testcases +2025-06-20 10:38:16,651 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: security_checks 从 ./custom_testcases/security_checks.py +2025-06-20 10:38:16,651 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-002' (敏感字段加密检查) 来自类 'EncryptedFieldsCheck' (路径: ./custom_testcases/security_checks.py) +2025-06-20 10:38:16,651 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: basic_checks 从 ./custom_testcases/basic_checks.py +2025-06-20 10:38:16,651 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-STATUS-001' (基本状态码 200 检查) 来自类 'StatusCode200Check' (路径: ./custom_testcases/basic_checks.py) +2025-06-20 10:38:16,652 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_llm_compliance_check 从 ./custom_testcases/llm/tc_llm_compliance_check.py +2025-06-20 10:38:16,652 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) 来自类 'LLMComplianceCheckTestCase' (路径: ./custom_testcases/llm/tc_llm_compliance_check.py) +2025-06-20 10:38:16,653 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: required_headers_check 从 ./custom_testcases/setup_checks/required_headers_check.py +2025-06-20 10:38:16,653 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-HEADER-001' (必需请求头Schema验证) 来自类 'RequiredHeadersSchemaCheck' (路径: ./custom_testcases/setup_checks/required_headers_check.py) +2025-06-20 10:38:16,655 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_response_schema_format_001 从 ./custom_testcases/井筒/DMS增加核心存储服务API/tc_response_schema_format_001.py +2025-06-20 10:38:16,655 - 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-06-20 10:38:16,657 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_url_version_check_001 从 ./custom_testcases/井筒/DMS增加核心存储服务API/tc_url_version_check_001.py +2025-06-20 10:38:16,657 - 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-06-20 10:38:16,658 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_pagination_params_check 从 ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py +2025-06-20 10:38:16,658 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-DMS-PAGINATION-001' (分页参数检查) 来自类 'PaginationParamsCheckTestCase' (路径: ./custom_testcases/井筒/开发指南-后端/tc_pagination_params_check.py) +2025-06-20 10:38:16,658 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_002 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py +2025-06-20 10:38:16,658 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-002' (资源路径名词检查) 来自类 'ResourcePathNounCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_002.py) +2025-06-20 10:38:16,661 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_003 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py +2025-06-20 10:38:16,661 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-003' (时间字段ISO 8601格式检查) 来自类 'TimeFormatCheckTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_003.py) +2025-06-20 10:38:16,662 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_combined_001 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py +2025-06-20 10:38:16,662 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-RESTful-001' (核心命名与结构规范检查) 来自类 'CoreNamingStructureTestCase' (路径: ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_combined_001.py) +2025-06-20 10:38:16,663 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: tc_normative_004 从 ./custom_testcases/井筒/RESTful接口设计要求/tc_normative_004.py +2025-06-20 10:38:16,664 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: https_mandatory_case 从 ./custom_testcases/compliance_catalog/security/https_mandatory_case.py +2025-06-20 10:38:16,664 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) 来自类 'HTTPSMandatoryCase' (路径: ./custom_testcases/compliance_catalog/security/https_mandatory_case.py) +2025-06-20 10:38:16,665 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: url_llm_checks 从 ./custom_testcases/compliance_catalog/normative_spec/url_llm_checks.py +2025-06-20 10:38:16,665 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: http_method_usage_case 从 ./custom_testcases/compliance_catalog/normative_spec/http_method_usage_case.py +2025-06-20 10:38:16,666 - 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-06-20 10:38:16,666 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) 来自类 'MissingRequiredFieldQueryCase' (路径: ./custom_testcases/compliance_catalog/error_handling/missing_required_field_query_case.py) +2025-06-20 10:38:16,666 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: invalid_enum_value_case 从 ./custom_testcases/compliance_catalog/error_handling/invalid_enum_value_case.py +2025-06-20 10:38:16,666 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) 来自类 'InvalidEnumValueCase' (路径: ./custom_testcases/compliance_catalog/error_handling/invalid_enum_value_case.py) +2025-06-20 10:38:16,667 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: type_mismatch_body_case 从 ./custom_testcases/compliance_catalog/error_handling/type_mismatch_body_case.py +2025-06-20 10:38:16,667 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) 来自类 'TypeMismatchBodyCase' (路径: ./custom_testcases/compliance_catalog/error_handling/type_mismatch_body_case.py) +2025-06-20 10:38:16,667 - 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-06-20 10:38:16,667 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) 来自类 'MissingRequiredFieldBodyCase' (路径: ./custom_testcases/compliance_catalog/error_handling/missing_required_field_body_case.py) +2025-06-20 10:38:16,668 - 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-06-20 10:38:16,668 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) 来自类 'TypeMismatchQueryParamCase' (路径: ./custom_testcases/compliance_catalog/error_handling/type_mismatch_query_param_case.py) +2025-06-20 10:38:16,668 - 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-06-20 10:38:16,668 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) 来自类 'NumberOutOfRangeCase' (路径: ./custom_testcases/compliance_catalog/error_handling/number_out_of_range_case.py) +2025-06-20 10:38:16,668 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: schema_validation_case 从 ./custom_testcases/compliance_catalog/core_functionality/schema_validation_case.py +2025-06-20 10:38:16,668 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) 来自类 'ResponseSchemaValidationCase' (路径: ./custom_testcases/compliance_catalog/core_functionality/schema_validation_case.py) +2025-06-20 10:38:16,668 - ddms_compliance_suite.test_case_registry - INFO - 已根据 execution_order (主要) 和类名 (次要) 对 18 个测试用例类进行了排序。 +2025-06-20 10:38:16,669 - ddms_compliance_suite.test_case_registry - INFO - 测试用例发现完成。总共注册了 18 个独特的测试用例 (基于ID)。发现并排序了 18 个测试用例类。 +2025-06-20 10:38:16,669 - ddms_compliance_suite.llm_utils.llm_service - INFO - LLMService initialized for model 'qwen-plus' at https://dashscope.aliyuncs.com/compatible-mode/v1 +2025-06-20 10:38:16,669 - ddms_compliance_suite.test_orchestrator - INFO - LLMService initialized with model: qwen-plus. +2025-06-20 10:38:16,669 - ddms_compliance_suite.test_orchestrator - INFO - LLMService is initialized, but no LLM generation flags (--use-llm-for-*) are enabled. +2025-06-20 10:38:16,669 - ddms_compliance_suite.stage_registry - INFO - 开始从目录发现测试阶段: custom_stages +2025-06-20 10:38:16,670 - ddms_compliance_suite.stage_registry - DEBUG - 成功加载模块: ddms_compliance_suite.stages.keyword_driven_crud_stage 从 custom_stages/keyword_driven_crud_stage.py +2025-06-20 10:38:16,670 - ddms_compliance_suite.stage_registry - INFO - 成功注册测试阶段: generic_crud_validation_stage (来自 ddms_compliance_suite.stages.keyword_driven_crud_stage.GenericCRUDValidationStage) +2025-06-20 10:38:16,670 - ddms_compliance_suite.stage_registry - INFO - 测试阶段发现完成。共加载 1 个阶段。发现 0 个错误。 +2025-06-20 10:38:16,670 - ddms_compliance_suite.test_orchestrator - INFO - StageRegistry initialized. Loaded 1 stages. +2025-06-20 10:38:16,670 - ddms_compliance_suite.test_orchestrator - INFO - Orchestrator output directory set to: /Users/zpc01/workspace/zzlh/compliance/test_reports +2025-06-20 10:38:16,670 - __main__ - INFO - 从YAPI文件运行测试: ./assets/doc/井筒API示例_simple.json +2025-06-20 10:38:16,670 - ddms_compliance_suite.test_orchestrator - INFO - 准备从YAPI文件运行测试用例: ./assets/doc/井筒API示例_simple.json +2025-06-20 10:38:16,670 - ddms_compliance_suite.input_parser.parser - INFO - Parsing YAPI spec from: ./assets/doc/井筒API示例_simple.json +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_orchestrator - INFO - TestSummary initialized. +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,672 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,673 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} (数据推送接口) +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。 +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-20 10:38:16,674 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:16,674 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:16,674 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:16,674 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:16,674 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:16,674 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:16,674 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:16,674 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:16,675 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:16,675 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:17,215 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} +2025-06-20 10:38:17,216 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] +2025-06-20 10:38:17,216 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:17,216 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID +2025-06-20 10:38:17,216 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:17,216 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain +2025-06-20 10:38:17,216 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization +2025-06-20 10:38:17,216 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 +2025-06-20 10:38:17,216 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 +2025-06-20 10:38:17,216 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:17,217 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:17,217 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:17,217 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,217 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,217 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,217 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:17,217 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:17,217 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:17,218 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:17,275 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:17,275 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:17,275 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:17,275 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,275 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,275 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,275 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:17,275 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:17,276 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'location', 'coord'} +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:17,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:17,277 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:17,342 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 4006, 'message': 'est officia in sit culpa', 'data': {'total': 15, 'list': [{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}]}} +2025-06-20 10:38:17,342 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 4006, 'message': 'est officia in sit culpa', 'data': {'total': 15, 'list': [{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}]}} +2025-06-20 10:38:17,342 - testcase.TC-SECURITY-002 - INFO - response_data:{'total': 15, 'list': [{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}]} +2025-06-20 10:38:17,342 - testcase.TC-SECURITY-002 - INFO - response_data:[{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123}] +2025-06-20 10:38:17,342 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '97', 'dataRegion': 'ullamco est irure quis in', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None, 'key': 123} +2025-06-20 10:38:17,342 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 +2025-06-20 10:38:17,342 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 +2025-06-20 10:38:17,342 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 +2025-06-20 10:38:17,342 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:17,342 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:17,342 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:17,343 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:17,343 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:17,343 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,343 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,343 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,343 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:17,343 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:17,344 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:17,344 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:17,395 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { "method": "POST", "url": "http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version", "path": "/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}", @@ -489,16 +489,16 @@ "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:01 GMT", + "Date": "Fri, 20 Jun 2025 02:38:17 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, "response_body": "{\"code\": 4006, \"message\": \"est officia in sit culpa\", \"data\": {\"total\": 15, \"list\": [{\"dsid\": \"97\", \"dataRegion\": \"ullamco est irure quis in\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null, \"key\": 123}]}}" } -2025-06-16 18:36:01,432 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ +2025-06-20 10:38:17,395 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除" ] -2025-06-16 18:36:01,432 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: +2025-06-20 10:38:17,395 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: 你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。 合规性标准: @@ -569,7 +569,7 @@ API信息: "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:01 GMT", + "Date": "Fri, 20 Jun 2025 02:38:17 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, @@ -582,7 +582,7 @@ API信息: ... ] -2025-06-16 18:36:01,432 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: +2025-06-20 10:38:17,395 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: { "model": "qwen-plus", "messages": [ @@ -592,19 +592,19 @@ API信息: }, { "role": "user", - "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"POST\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}\",\n \"operationId\": \"post__api_dms_dms_instance_code_v1_message_push_schema_version_135716\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {},\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\",\n \"schema\": \"example_schema\",\n \"version\": \"example_version\"\n },\n \"body\": {\n \"isSearchCount\": true,\n \"query\": {\n \"dataRegions\": [\n \"example_string\"\n ],\n \"fields\": [\n \"example_string\"\n ],\n \"filter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"groupFields\": [\n \"example_string\"\n ],\n \"groupFilter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"sort\": {}\n }\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"208\",\n \"success\": \"false\",\n \"Date\": \"Mon, 16 Jun 2025 10:36:01 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 4006, \\\"message\\\": \\\"est officia in sit culpa\\\", \\\"data\\\": {\\\"total\\\": 15, \\\"list\\\": [{\\\"dsid\\\": \\\"97\\\", \\\"dataRegion\\\": \\\"ullamco est irure quis in\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null, \\\"key\\\": 123}]}}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" + "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"POST\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}\",\n \"operationId\": \"post__api_dms_dms_instance_code_v1_message_push_schema_version_135716\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {},\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\",\n \"schema\": \"example_schema\",\n \"version\": \"example_version\"\n },\n \"body\": {\n \"isSearchCount\": true,\n \"query\": {\n \"dataRegions\": [\n \"example_string\"\n ],\n \"fields\": [\n \"example_string\"\n ],\n \"filter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"groupFields\": [\n \"example_string\"\n ],\n \"groupFilter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"sort\": {}\n }\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"208\",\n \"success\": \"false\",\n \"Date\": \"Fri, 20 Jun 2025 02:38:17 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 4006, \\\"message\\\": \\\"est officia in sit culpa\\\", \\\"data\\\": {\\\"total\\\": 15, \\\"list\\\": [{\\\"dsid\\\": \\\"97\\\", \\\"dataRegion\\\": \\\"ullamco est irure quis in\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null, \\\"key\\\": 123}]}}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" } ], "max_tokens": 2048, "temperature": 0.2 } -2025-06-16 18:36:08,210 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: +2025-06-20 10:38:20,860 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: { "choices": [ { "message": { "role": "assistant", - "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了POST方法,并且根据其路径和操作内容(/message/push),可以合理推测该请求用于创建或推送消息,符合POST方法的语义。\"\n }\n]" + "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了POST方法,且根据URL和路径参数判断,该操作涉及创建或推送消息(/message/push),符合POST方法的语义。\"\n }\n]" }, "finish_reason": "stop", "index": 0, @@ -614,81 +614,81 @@ API信息: "object": "chat.completion", "usage": { "prompt_tokens": 725, - "completion_tokens": 87, - "total_tokens": 812, + "completion_tokens": 84, + "total_tokens": 809, "prompt_tokens_details": { "cached_tokens": 0 } }, - "created": 1750070168, + "created": 1750387101, "system_fingerprint": null, "model": "qwen-plus", - "id": "chatcmpl-21061992-e2a3-93d2-b461-18b9262214fc" + "id": "chatcmpl-eeae4f21-a7aa-9896-8bef-8a5997489a9a" } -2025-06-16 18:36:08,211 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ +2025-06-20 10:38:20,861 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", "passed": true, - "reason": "当前API调用使用了POST方法,并且根据其路径和操作内容(/message/push),可以合理推测该请求用于创建或推送消息,符合POST方法的语义。" + "reason": "当前API调用使用了POST方法,且根据URL和路径参数判断,该操作涉及创建或推送消息(/message/push),符合POST方法的语义。" } ] -2025-06-16 18:36:08,211 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 -2025-06-16 18:36:08,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 -2025-06-16 18:36:08,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,211 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,211 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,212 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,212 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,212 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,212 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,212 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,212 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,214 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,215 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:20,861 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 +2025-06-20 10:38:20,861 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 +2025-06-20 10:38:20,861 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:20,861 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:20,861 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:20,861 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:20,861 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:20,861 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:20,861 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:20,862 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,862 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,862 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,862 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:20,862 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:20,863 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version @@ -697,237 +697,237 @@ DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.3 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' -2025-06-16 18:36:08,265 - testcase.TC-RESTful-001 - INFO - responses: {'201': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}}}}} -2025-06-16 18:36:08,265 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['201'] -2025-06-16 18:36:08,265 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 -2025-06-16 18:36:08,265 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 -2025-06-16 18:36:08,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,266 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,266 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,266 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,266 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,266 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,266 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,266 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,266 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,269 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,269 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,269 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,269 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,269 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,269 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,269 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,293 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 -2025-06-16 18:36:08,294 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:08,294 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,294 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,294 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,294 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,294 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,294 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,294 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,294 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,294 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,294 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,294 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,295 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,296 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,319 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 -2025-06-16 18:36:08,321 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 -2025-06-16 18:36:08,321 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,321 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,321 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,321 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,322 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,322 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,326 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,326 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,326 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,326 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,326 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,326 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,328 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,329 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,347 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 -2025-06-16 18:36:08,347 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 -2025-06-16 18:36:08,347 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,347 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,347 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,347 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,347 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,347 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,347 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,347 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,347 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,348 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,348 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,348 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,348 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,350 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:20,952 - testcase.TC-RESTful-001 - INFO - responses: {'201': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}}}}} +2025-06-20 10:38:20,952 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['201'] +2025-06-20 10:38:20,952 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 +2025-06-20 10:38:20,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 +2025-06-20 10:38:20,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:20,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:20,952 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:20,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:20,952 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:20,952 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:20,952 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:20,952 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,952 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,952 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,952 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:20,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:20,954 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:20,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:20,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:20,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:20,955 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:20,985 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 +2025-06-20 10:38:20,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:20,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:20,985 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:20,985 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:20,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:20,985 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:20,985 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:20,985 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:20,986 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,986 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,986 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,986 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,986 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:20,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:20,988 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,017 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 +2025-06-20 10:38:21,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,018 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,018 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,018 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,018 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,018 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,018 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,019 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,063 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,063 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,063 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,063 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,063 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,063 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,063 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,064 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,064 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' status_code: 200 @@ -938,249 +938,249 @@ DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.3 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' -2025-06-16 18:36:08,370 - testcase.TC-CORE-FUNC-001 - INFO - 响应包含JSON体,但在API规范中未找到针对状态码 200 的JSON schema。跳过schema验证。 -2025-06-16 18:36:08,370 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 -2025-06-16 18:36:08,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 -2025-06-16 18:36:08,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,370 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,370 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,370 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,371 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,371 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,371 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,371 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,371 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,371 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,371 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,372 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,373 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,389 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 -2025-06-16 18:36:08,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 -2025-06-16 18:36:08,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,389 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,389 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,389 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,389 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,389 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,389 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,390 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,390 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,390 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,390 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,392 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,426 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 -2025-06-16 18:36:08,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:08,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,427 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,428 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,428 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 不是HTTPS。跳过此测试用例的URL修改。 -2025-06-16 18:36:08,452 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 -2025-06-16 18:36:08,452 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 -2025-06-16 18:36:08,452 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 -2025-06-16 18:36:08,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,453 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,453 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,453 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,453 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,453 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,453 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,453 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,453 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,453 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,454 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. -2025-06-16 18:36:08,454 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters. -2025-06-16 18:36:08,454 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test. -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,454 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,455 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,456 - 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-06-16 18:36:08,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:08,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,456 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:08,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:08,456 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:21,099 - testcase.TC-CORE-FUNC-001 - INFO - 响应包含JSON体,但在API规范中未找到针对状态码 200 的JSON schema。跳过schema验证。 +2025-06-20 10:38:21,099 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 +2025-06-20 10:38:21,099 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,100 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,100 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,100 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,100 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,100 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,100 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,100 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,101 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,132 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,132 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,132 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,132 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,132 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,132 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,132 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,133 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,134 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,167 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 +2025-06-20 10:38:21,168 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:21,168 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,168 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,168 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,168 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,168 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,168 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,168 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,168 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,169 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,169 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,169 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,169 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。 +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,169 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,170 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,171 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,171 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 不是HTTPS。跳过此测试用例的URL修改。 +2025-06-20 10:38:21,205 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,205 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,205 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,205 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,205 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,205 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,205 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,205 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters. +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test. +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,206 - 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-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,206 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:21,206 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version @@ -1189,555 +1189,555 @@ DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.3 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' -2025-06-16 18:36:08,470 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified. -2025-06-16 18:36:08,471 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.014088869094848633 -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。 -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过 -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,471 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,471 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,471 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,471 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,471 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,471 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,471 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,472 - 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-06-16 18:36:08,472 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:08,472 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... -2025-06-16 18:36:08,472 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=isSearchCount, Type=boolean -2025-06-16 18:36:08,472 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=isSearchCount, Type=boolean -2025-06-16 18:36:08,472 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): isSearchCount, Original Type: boolean -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,472 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,473 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,473 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. -2025-06-16 18:36:08,473 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:08,473 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['isSearchCount'], Original type: boolean -2025-06-16 18:36:08,473 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value 'not-a-boolean' for original type 'boolean' at path 'isSearchCount'. -2025-06-16 18:36:08,474 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 isSearchCount (键 'isSearchCount') 处设置值为 'not-a-boolean' -2025-06-16 18:36:08,474 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. -2025-06-16 18:36:08,474 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,474 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,474 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,474 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:08,474 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,474 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:08,474 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:08,489 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.014600276947021484 -2025-06-16 18:36:08,489 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 -2025-06-16 18:36:08,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:08,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,489 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,489 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,489 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,490 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,490 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,490 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,490 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,490 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,490 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,490 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... -2025-06-16 18:36:08,490 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:08,491 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. -2025-06-16 18:36:08,492 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. -2025-06-16 18:36:08,492 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. -2025-06-16 18:36:08,492 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. -2025-06-16 18:36:08,492 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. -2025-06-16 18:36:08,492 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,492 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,493 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,493 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,493 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:08,493 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,493 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:08,493 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:08,508 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.014004230499267578 -2025-06-16 18:36:08,508 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 -2025-06-16 18:36:08,508 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 -2025-06-16 18:36:08,508 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,508 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,508 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,508 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,508 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,508 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,508 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,508 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,508 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,509 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,509 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,509 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,509 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... -2025-06-16 18:36:08,512 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Found enum field in BODY at path: query.filter.logic -2025-06-16 18:36:08,512 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Target found in 'body' at path 'query.filter.logic'. Valid enums: ['AND', 'OR'], Desc: '逻辑操作符,可选值为:AND、OR' -2025-06-16 18:36:08,513 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Setting invalid enum value to 'invalid_enum_kaj20t' (valid are ['AND', 'OR']). -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,513 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,514 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 query.filter.logic (键 'logic') 处设置值为 'invalid_enum_kaj20t' -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,514 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,527 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4006' 执行失败。 -2025-06-16 18:36:08,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 失败 -2025-06-16 18:36:08,527 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,528 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['isSearchCount', 'query'] -2025-06-16 18:36:08,528 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 -2025-06-16 18:36:08,528 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. -2025-06-16 18:36:08,529 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,529 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,530 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,234 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified. +2025-06-20 10:38:21,234 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.02792811393737793 +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。 +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过 +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,235 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,235 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,235 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,235 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,235 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,235 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,235 - 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-06-20 10:38:21,235 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:21,235 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... +2025-06-20 10:38:21,235 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=isSearchCount, Type=boolean +2025-06-20 10:38:21,235 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=isSearchCount, Type=boolean +2025-06-20 10:38:21,235 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): isSearchCount, Original Type: boolean +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,235 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['isSearchCount'], Original type: boolean +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value 'not-a-boolean' for original type 'boolean' at path 'isSearchCount'. +2025-06-20 10:38:21,236 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 isSearchCount (键 'isSearchCount') 处设置值为 'not-a-boolean' +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,236 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:21,236 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:21,261 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.024433135986328125 +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,261 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,261 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,261 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,261 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,261 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,261 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,261 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,261 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... +2025-06-20 10:38:21,261 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:21,261 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. +2025-06-20 10:38:21,262 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. +2025-06-20 10:38:21,262 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. +2025-06-20 10:38:21,262 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. +2025-06-20 10:38:21,262 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. +2025-06-20 10:38:21,262 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,262 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,263 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,263 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,263 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:21,263 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,263 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:21,263 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:21,287 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.024052858352661133 +2025-06-20 10:38:21,287 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 +2025-06-20 10:38:21,287 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 +2025-06-20 10:38:21,287 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,287 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,287 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,287 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,287 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,287 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,288 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,288 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,288 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,288 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,288 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,288 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,288 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... +2025-06-20 10:38:21,289 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Found enum field in BODY at path: query.filter.logic +2025-06-20 10:38:21,289 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Target found in 'body' at path 'query.filter.logic'. Valid enums: ['AND', 'OR'], Desc: '逻辑操作符,可选值为:AND、OR' +2025-06-20 10:38:21,289 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Setting invalid enum value to 'invalid_enum_8j5lv9' (valid are ['AND', 'OR']). +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,289 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,290 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 query.filter.logic (键 'logic') 处设置值为 'invalid_enum_8j5lv9' +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,290 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,319 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4006' 执行失败。 +2025-06-20 10:38:21,319 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 失败 +2025-06-20 10:38:21,319 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,319 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,319 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,319 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,320 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,320 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,320 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,320 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,320 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,320 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,320 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,321 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['isSearchCount', 'query'] +2025-06-20 10:38:21,321 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 +2025-06-20 10:38:21,321 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. +2025-06-20 10:38:21,321 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,321 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,322 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 488' -d '{"isSearchCount": "not-a-boolean", "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 488\' -d \'{"isSearchCount": "not-a-boolean", "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_kaj20t", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 482\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_kaj20t", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' -2025-06-16 18:36:08,549 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 -2025-06-16 18:36:08,550 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 -2025-06-16 18:36:08,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 -2025-06-16 18:36:08,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,550 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,550 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,550 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,550 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,550 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,550 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,550 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,551 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,551 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,551 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,551 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. -2025-06-16 18:36:08,551 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。Target param to remove: None -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,552 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,553 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,554 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] -2025-06-16 18:36:08,554 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) -2025-06-16 18:36:08,554 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} -2025-06-16 18:36:08,554 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version -2025-06-16 18:36:08,567 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 测试完成,最终状态: 失败 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} (地质单元列表查询) -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,567 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,568 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,568 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,568 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,568 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,568 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,568 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,569 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,569 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,570 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,570 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,570 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:08,570 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:08,570 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,570 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:08,584 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} -2025-06-16 18:36:08,584 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] -2025-06-16 18:36:08,584 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:08,584 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID -2025-06-16 18:36:08,584 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:08,584 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain -2025-06-16 18:36:08,584 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization -2025-06-16 18:36:08,584 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 -2025-06-16 18:36:08,584 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 -2025-06-16 18:36:08,584 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,584 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,584 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,584 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,584 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,584 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,584 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,584 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,585 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,585 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,585 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,585 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,585 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,586 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:08,600 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:08,600 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 -2025-06-16 18:36:08,600 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 -2025-06-16 18:36:08,600 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,600 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,600 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,600 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,600 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,600 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,600 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,600 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,601 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,601 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,601 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,601 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'coord', 'location'} -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,601 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:08,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:08,603 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,603 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_8j5lv9", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 482\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_8j5lv9", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' +2025-06-20 10:38:21,351 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,352 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,352 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,352 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,352 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,352 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,352 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('schema') 的 schema... +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('version') 的 schema... +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,352 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. +2025-06-20 10:38:21,352 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。Target param to remove: None +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716': application/json +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,352 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.isSearchCount): True +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.fields[0]): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.key): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.logic): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.filter.symbol): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_message_push_schema_version_135716] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_message_push_schema_version_135716_body.query.sort). Properties: [] +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_message_push_schema_version_135716' (type: ) +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'schema': 'example_schema', 'version': 'example_version'} +2025-06-20 10:38:21,353 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +2025-06-20 10:38:21,381 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 测试完成,最终状态: 失败 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} (地质单元列表查询) +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。 +2025-06-20 10:38:21,382 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,383 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,383 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,383 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,383 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,383 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,383 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,383 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,384 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:21,438 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} +2025-06-20 10:38:21,438 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] +2025-06-20 10:38:21,439 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:21,439 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID +2025-06-20 10:38:21,439 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:21,439 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain +2025-06-20 10:38:21,439 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,439 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,439 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,439 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,439 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,439 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,439 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:21,439 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,440 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,441 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:21,441 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:21,441 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,441 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:21,466 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:21,466 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 +2025-06-20 10:38:21,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 +2025-06-20 10:38:21,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,466 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,466 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,467 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,467 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,467 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'location', 'coord'} +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,469 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version @@ -1746,75 +1746,73 @@ DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.3 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' -2025-06-16 18:36:08,617 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 67, 'message': 'nostrud', 'data': {'total': 13, 'list': [{'dsid': '96', 'dataRegion': 'Lorem veniam mollit consequat adipisicing', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '85', 'dataRegion': 'ea elit cupidatat', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '20', 'dataRegion': 'anim culpa', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} -2025-06-16 18:36:08,617 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 67, 'message': 'nostrud', 'data': {'total': 13, 'list': [{'dsid': '96', 'dataRegion': 'Lorem veniam mollit consequat adipisicing', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '85', 'dataRegion': 'ea elit cupidatat', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '20', 'dataRegion': 'anim culpa', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} -2025-06-16 18:36:08,617 - testcase.TC-SECURITY-002 - INFO - response_data:{'total': 13, 'list': [{'dsid': '96', 'dataRegion': 'Lorem veniam mollit consequat adipisicing', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '85', 'dataRegion': 'ea elit cupidatat', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '20', 'dataRegion': 'anim culpa', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]} -2025-06-16 18:36:08,617 - testcase.TC-SECURITY-002 - INFO - response_data:[{'dsid': '96', 'dataRegion': 'Lorem veniam mollit consequat adipisicing', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '85', 'dataRegion': 'ea elit cupidatat', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '20', 'dataRegion': 'anim culpa', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}] -2025-06-16 18:36:08,617 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '96', 'dataRegion': 'Lorem veniam mollit consequat adipisicing', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} -2025-06-16 18:36:08,618 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '85', 'dataRegion': 'ea elit cupidatat', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} -2025-06-16 18:36:08,618 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '20', 'dataRegion': 'anim culpa', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} -2025-06-16 18:36:08,618 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:08,618 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:08,618 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:08,618 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,618 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,618 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,618 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:08,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:08,619 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:08,619 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:08,620 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:08,621 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:08,621 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:08,621 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:08,638 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { +2025-06-20 10:38:21,510 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 16, 'message': 'quis reprehenderit in ut', 'data': {'total': 9, 'list': [{'dsid': '28', 'dataRegion': 'fugiat ut sint ex minim', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} +2025-06-20 10:38:21,510 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 16, 'message': 'quis reprehenderit in ut', 'data': {'total': 9, 'list': [{'dsid': '28', 'dataRegion': 'fugiat ut sint ex minim', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} +2025-06-20 10:38:21,510 - testcase.TC-SECURITY-002 - INFO - response_data:{'total': 9, 'list': [{'dsid': '28', 'dataRegion': 'fugiat ut sint ex minim', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]} +2025-06-20 10:38:21,510 - testcase.TC-SECURITY-002 - INFO - response_data:[{'dsid': '28', 'dataRegion': 'fugiat ut sint ex minim', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}] +2025-06-20 10:38:21,510 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '28', 'dataRegion': 'fugiat ut sint ex minim', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} +2025-06-20 10:38:21,510 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:21,510 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:21,510 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,510 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,510 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,510 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:21,510 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:21,511 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:21,511 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:21,512 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:21,598 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { "method": "POST", "url": "http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0", "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}", @@ -1876,18 +1874,18 @@ DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/ "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "205", + "Content-Length": "171", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 31, \"message\": \"eiusmod adipisicing culpa ad anim\", \"data\": {\"total\": 32, \"list\": [{\"dsid\": \"94\", \"dataRegion\": \"anim fugiat pariatur nisi\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" + "response_body": "{\"code\": 64, \"message\": \"veniam\", \"data\": {\"total\": 11, \"list\": [{\"dsid\": \"95\", \"dataRegion\": \"culpa dolore dolor\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" } -2025-06-16 18:36:08,638 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ +2025-06-20 10:38:21,598 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除" ] -2025-06-16 18:36:08,638 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: +2025-06-20 10:38:21,598 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: 你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。 合规性标准: @@ -1958,13 +1956,13 @@ API信息: "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "205", + "Content-Length": "171", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 31, \"message\": \"eiusmod adipisicing culpa ad anim\", \"data\": {\"total\": 32, \"list\": [{\"dsid\": \"94\", \"dataRegion\": \"anim fugiat pariatur nisi\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" + "response_body": "{\"code\": 64, \"message\": \"veniam\", \"data\": {\"total\": 11, \"list\": [{\"dsid\": \"95\", \"dataRegion\": \"culpa dolore dolor\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" } 请以如下JSON格式输出: @@ -1973,7 +1971,7 @@ API信息: ... ] -2025-06-16 18:36:08,639 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: +2025-06-20 10:38:21,598 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: { "model": "qwen-plus", "messages": [ @@ -1983,19 +1981,19 @@ API信息: }, { "role": "user", - "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"POST\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}\",\n \"operationId\": \"post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {\n \"pageNo\": \"query_val_pageNo\",\n \"pageSize\": \"query_val_pageSize\"\n },\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\",\n \"version\": \"1.0.0\"\n },\n \"body\": {\n \"isSearchCount\": true,\n \"query\": {\n \"dataRegions\": [\n \"example_string\"\n ],\n \"fields\": [\n \"example_string\"\n ],\n \"filter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"groupFields\": [\n \"example_string\"\n ],\n \"groupFilter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"sort\": {}\n }\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"205\",\n \"success\": \"false\",\n \"Date\": \"Mon, 16 Jun 2025 10:36:08 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 31, \\\"message\\\": \\\"eiusmod adipisicing culpa ad anim\\\", \\\"data\\\": {\\\"total\\\": 32, \\\"list\\\": [{\\\"dsid\\\": \\\"94\\\", \\\"dataRegion\\\": \\\"anim fugiat pariatur nisi\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null}]}}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" + "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"POST\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}\",\n \"operationId\": \"post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {\n \"pageNo\": \"query_val_pageNo\",\n \"pageSize\": \"query_val_pageSize\"\n },\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\",\n \"version\": \"1.0.0\"\n },\n \"body\": {\n \"isSearchCount\": true,\n \"query\": {\n \"dataRegions\": [\n \"example_string\"\n ],\n \"fields\": [\n \"example_string\"\n ],\n \"filter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"groupFields\": [\n \"example_string\"\n ],\n \"groupFilter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"sort\": {}\n }\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"171\",\n \"success\": \"false\",\n \"Date\": \"Fri, 20 Jun 2025 02:38:21 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 64, \\\"message\\\": \\\"veniam\\\", \\\"data\\\": {\\\"total\\\": 11, \\\"list\\\": [{\\\"dsid\\\": \\\"95\\\", \\\"dataRegion\\\": \\\"culpa dolore dolor\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null}]}}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" } ], "max_tokens": 2048, "temperature": 0.2 } -2025-06-16 18:36:12,699 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: +2025-06-20 10:38:28,357 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: { "choices": [ { "message": { "role": "assistant", - "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。\"\n }\n]" + "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。\"\n }\n]" }, "finish_reason": "stop", "index": 0, @@ -2004,145 +2002,145 @@ API信息: ], "object": "chat.completion", "usage": { - "prompt_tokens": 734, - "completion_tokens": 79, - "total_tokens": 813, + "prompt_tokens": 727, + "completion_tokens": 78, + "total_tokens": 805, "prompt_tokens_details": { "cached_tokens": 0 } }, - "created": 1750070173, + "created": 1750387109, "system_fingerprint": null, "model": "qwen-plus", - "id": "chatcmpl-699556a6-508b-9d00-82fa-b5f921f4c588" + "id": "chatcmpl-5f925d48-fcb5-90ad-bedc-40d234cde00c" } -2025-06-16 18:36:12,699 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ +2025-06-20 10:38:28,358 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", "passed": true, - "reason": "当前API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。" + "reason": "API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。" } ] -2025-06-16 18:36:12,700 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 -2025-06-16 18:36:12,700 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 -2025-06-16 18:36:12,700 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,700 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,700 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,701 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,701 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,701 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,701 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,701 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,701 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,703 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,704 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,704 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,756 - testcase.TC-RESTful-001 - INFO - responses: {'201': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}}}}} -2025-06-16 18:36:12,756 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['201'] -2025-06-16 18:36:12,756 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 -2025-06-16 18:36:12,756 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 -2025-06-16 18:36:12,756 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,756 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,756 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,756 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,756 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,756 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,756 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,756 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,757 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,759 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,759 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,759 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,359 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 +2025-06-20 10:38:28,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 +2025-06-20 10:38:28,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,359 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,359 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,359 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,359 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,360 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,360 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,360 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,360 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,361 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,408 - testcase.TC-RESTful-001 - INFO - responses: {'201': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}}}}} +2025-06-20 10:38:28,408 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['201'] +2025-06-20 10:38:28,408 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 +2025-06-20 10:38:28,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 +2025-06-20 10:38:28,408 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,408 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,408 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,409 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,409 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,409 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,409 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,409 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,409 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,410 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,411 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,411 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,411 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,411 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,411 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,411 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' @@ -2152,244 +2150,244 @@ DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/ status_code: 200 responses: {'201': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}}}}} 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -2025-06-16 18:36:12,782 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 -2025-06-16 18:36:12,783 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:12,783 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,783 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,783 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,783 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,783 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,783 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,783 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,783 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,783 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,783 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,783 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,784 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,786 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,805 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 -2025-06-16 18:36:12,805 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 -2025-06-16 18:36:12,805 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,805 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,805 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,805 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,805 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,805 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,805 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,806 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,806 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,806 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,806 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,808 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,809 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,827 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 -2025-06-16 18:36:12,827 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 -2025-06-16 18:36:12,827 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,827 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,827 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,827 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,827 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,828 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,828 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,828 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,828 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,828 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,828 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,828 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,828 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,828 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,828 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,828 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,828 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,828 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,829 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,829 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,830 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,831 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,831 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,831 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,831 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,831 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,847 - testcase.TC-CORE-FUNC-001 - INFO - 响应包含JSON体,但在API规范中未找到针对状态码 200 的JSON schema。跳过schema验证。 -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,848 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,848 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,848 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,848 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,848 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,848 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,849 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,850 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,437 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 +2025-06-20 10:38:28,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:28,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,437 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,437 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,437 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,437 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,438 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,438 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,438 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,438 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,438 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,438 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,439 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,440 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,440 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,465 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 +2025-06-20 10:38:28,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 +2025-06-20 10:38:28,465 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,465 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,466 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,466 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,467 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,468 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,505 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 +2025-06-20 10:38:28,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 +2025-06-20 10:38:28,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,505 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,505 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,505 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,505 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,505 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,505 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,505 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,505 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,506 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,506 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,506 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,507 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,508 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,508 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,508 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,508 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,508 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,508 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,508 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,542 - testcase.TC-CORE-FUNC-001 - INFO - 响应包含JSON体,但在API规范中未找到针对状态码 200 的JSON schema。跳过schema验证。 +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,542 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,542 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,542 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,542 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,542 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,542 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,543 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' @@ -2398,280 +2396,280 @@ DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/ 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,871 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,871 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,871 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,871 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,871 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,871 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,872 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,873 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,894 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 -2025-06-16 18:36:12,894 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:12,894 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,894 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,895 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,895 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,895 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,895 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,895 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,895 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,895 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,895 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,895 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,895 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,895 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,895 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,895 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,896 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,896 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,897 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,898 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,898 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,898 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,898 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,898 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0' 不是HTTPS。跳过此测试用例的URL修改。 -2025-06-16 18:36:12,913 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 -2025-06-16 18:36:12,913 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 -2025-06-16 18:36:12,913 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 -2025-06-16 18:36:12,913 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,913 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,913 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,914 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,914 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,914 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,914 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,914 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,914 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,914 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} -2025-06-16 18:36:12,915 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. -2025-06-16 18:36:12,915 - testcase.TC-ERROR-4001-QUERY - DEBUG - _find_first_simple_type_parameter: Checking query parameter 'pageNo'. -2025-06-16 18:36:12,915 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: Found simple type query parameter 'pageNo' (type: string) via its 'schema'. -2025-06-16 18:36:12,915 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Target for type mismatch (query): Param='pageNo', Path='pageNo', Type='string' -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,915 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Preparing to modify query params for type mismatch. Target path: ['pageNo'], Original type: string -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Generated mismatched value '12345' for original type 'string' at query path 'pageNo'. -2025-06-16 18:36:12,916 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 pageNo (键 'pageNo') 处设置值为 '12345' -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Successfully set mismatched value in query params using util_set_value_at_path. -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,916 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:12,916 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,917 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:12,917 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:12,931 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.014139890670776367 -2025-06-16 18:36:12,931 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-QUERY' 执行失败。 -2025-06-16 18:36:12,931 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 失败 -2025-06-16 18:36:12,931 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,931 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,931 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,932 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,932 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,932 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,932 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,932 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,932 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,933 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} -2025-06-16 18:36:12,933 - 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-06-16 18:36:12,933 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:12,933 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... -2025-06-16 18:36:12,933 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=isSearchCount, Type=boolean -2025-06-16 18:36:12,933 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=isSearchCount, Type=boolean -2025-06-16 18:36:12,933 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): isSearchCount, Original Type: boolean -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,933 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['isSearchCount'], Original type: boolean -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value 'not-a-boolean' for original type 'boolean' at path 'isSearchCount'. -2025-06-16 18:36:12,935 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 isSearchCount (键 'isSearchCount') 处设置值为 'not-a-boolean' -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. -2025-06-16 18:36:12,935 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,935 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:12,935 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:28,575 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 +2025-06-20 10:38:28,575 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 +2025-06-20 10:38:28,575 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,576 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,576 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,576 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,576 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,576 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,576 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,577 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,604 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 +2025-06-20 10:38:28,605 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:28,605 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,605 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,605 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,605 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,605 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,605 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,606 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,606 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,606 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,606 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,606 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,606 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。 +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,606 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,607 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,607 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0' 不是HTTPS。跳过此测试用例的URL修改。 +2025-06-20 10:38:28,633 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,634 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,634 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,634 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,634 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,634 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,634 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} +2025-06-20 10:38:28,634 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. +2025-06-20 10:38:28,634 - testcase.TC-ERROR-4001-QUERY - DEBUG - _find_first_simple_type_parameter: Checking query parameter 'pageNo'. +2025-06-20 10:38:28,634 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: Found simple type query parameter 'pageNo' (type: string) via its 'schema'. +2025-06-20 10:38:28,634 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Target for type mismatch (query): Param='pageNo', Path='pageNo', Type='string' +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Preparing to modify query params for type mismatch. Target path: ['pageNo'], Original type: string +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Generated mismatched value '12345' for original type 'string' at query path 'pageNo'. +2025-06-20 10:38:28,636 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 pageNo (键 'pageNo') 处设置值为 '12345' +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Successfully set mismatched value in query params using util_set_value_at_path. +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. +2025-06-20 10:38:28,636 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,636 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:28,636 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:28,670 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.033782958984375 +2025-06-20 10:38:28,670 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-QUERY' 执行失败。 +2025-06-20 10:38:28,670 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 失败 +2025-06-20 10:38:28,670 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,671 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,671 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,671 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,671 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,671 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,671 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} +2025-06-20 10:38:28,671 - 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-06-20 10:38:28,671 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:28,671 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... +2025-06-20 10:38:28,671 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=isSearchCount, Type=boolean +2025-06-20 10:38:28,671 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=isSearchCount, Type=boolean +2025-06-20 10:38:28,671 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): isSearchCount, Original Type: boolean +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,671 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,672 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. +2025-06-20 10:38:28,672 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:28,672 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['isSearchCount'], Original type: boolean +2025-06-20 10:38:28,672 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value 'not-a-boolean' for original type 'boolean' at path 'isSearchCount'. +2025-06-20 10:38:28,672 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 isSearchCount (键 'isSearchCount') 处设置值为 'not-a-boolean' +2025-06-20 10:38:28,672 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,672 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,672 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,673 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:28,673 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,673 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:28,673 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' @@ -2680,422 +2678,422 @@ DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/ 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=12345&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=12345&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 488' -d '{"isSearchCount": "not-a-boolean", "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -2025-06-16 18:36:12,950 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.014625072479248047 -2025-06-16 18:36:12,950 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 -2025-06-16 18:36:12,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:12,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,950 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,950 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,950 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,951 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,951 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,951 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,951 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,951 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,951 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,951 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - DEBUG - 从 '页码(从1开始)' 中提取到最小值: 1.0 -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in QUERY: 'pageNo' -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Target found in 'query' at path 'pageNo'. Type: string, Min: 1.0, Max: None, Desc: '页码(从1开始)' -2025-06-16 18:36:12,952 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 0.0 (min is 1.0). -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,952 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,953 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 pageNo (键 'pageNo') 处设置值为 '0.0' -2025-06-16 18:36:12,953 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters. -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,953 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,953 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,953 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:12,953 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,953 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:12,953 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:12,968 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.013894796371459961 -2025-06-16 18:36:12,968 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。 -2025-06-16 18:36:12,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败 -2025-06-16 18:36:12,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,968 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,968 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,968 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,968 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,968 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,968 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,968 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,968 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,968 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,969 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... -2025-06-16 18:36:12,969 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Found enum field in BODY at path: query.filter.logic -2025-06-16 18:36:12,969 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Target found in 'body' at path 'query.filter.logic'. Valid enums: ['AND', 'OR'], Desc: '逻辑操作符,可选值为:AND、OR' -2025-06-16 18:36:12,969 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Setting invalid enum value to 'invalid_enum_9ssyno' (valid are ['AND', 'OR']). -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,969 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,970 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,971 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 query.filter.logic (键 'logic') 处设置值为 'invalid_enum_9ssyno' -2025-06-16 18:36:12,971 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,971 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:12,987 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4006' 执行失败。 -2025-06-16 18:36:12,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 失败 -2025-06-16 18:36:12,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:12,988 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:12,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:12,988 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:12,988 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:12,988 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:12,988 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,988 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,988 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,989 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:12,989 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:12,989 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['isSearchCount', 'query'] -2025-06-16 18:36:12,989 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 -2025-06-16 18:36:12,990 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. -2025-06-16 18:36:12,990 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,990 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:12,991 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:13,009 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 -2025-06-16 18:36:13,009 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 -2025-06-16 18:36:13,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 -2025-06-16 18:36:13,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:13,009 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:13,009 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:13,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:13,009 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:13,009 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:13,009 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:13,009 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:13,009 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:13,010 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:13,010 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:13,010 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. -2025-06-16 18:36:13,010 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。Target param to remove: None -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:13,010 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:13,011 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:13,012 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:13,012 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,701 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.028250932693481445 +2025-06-20 10:38:28,701 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 +2025-06-20 10:38:28,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:28,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,703 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,703 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,703 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - DEBUG - 从 '页码(从1开始)' 中提取到最小值: 1.0 +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Found ranged numeric field in QUERY: 'pageNo' +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Target found in 'query' at path 'pageNo'. Type: string, Min: 1.0, Max: None, Desc: '页码(从1开始)' +2025-06-20 10:38:28,703 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Setting out-of-range value to 0.0 (min is 1.0). +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,704 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,705 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 pageNo (键 'pageNo') 处设置值为 '0.0' +2025-06-20 10:38:28,705 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Successfully injected out-of-range value into parameters. +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,705 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,705 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,705 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:28,705 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,705 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:28,705 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:28,729 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.024014949798583984 +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4002' 执行失败。 +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 失败 +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,730 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,730 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,730 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,730 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,730 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,730 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,730 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,731 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... +2025-06-20 10:38:28,731 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Found enum field in BODY at path: query.filter.logic +2025-06-20 10:38:28,731 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Target found in 'body' at path 'query.filter.logic'. Valid enums: ['AND', 'OR'], Desc: '逻辑操作符,可选值为:AND、OR' +2025-06-20 10:38:28,731 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Setting invalid enum value to 'invalid_enum_wf2e1t' (valid are ['AND', 'OR']). +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,731 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,732 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,733 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 query.filter.logic (键 'logic') 处设置值为 'invalid_enum_wf2e1t' +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,733 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4006' 执行失败。 +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 失败 +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,757 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,758 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['isSearchCount', 'query'] +2025-06-20 10:38:28,758 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 +2025-06-20 10:38:28,758 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. +2025-06-20 10:38:28,758 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,758 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,759 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:28,784 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 +2025-06-20 10:38:28,784 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 +2025-06-20 10:38:28,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 +2025-06-20 10:38:28,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,784 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,784 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,784 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,784 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:28,784 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:28,784 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,784 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,784 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,785 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('pageNo') 的 schema... +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('pageSize') 的 schema... +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('tenant-id') 的 schema... +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[5] ('Authorization') 的 schema... +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,785 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. +2025-06-20 10:38:28,785 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。Target param to remove: None +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:28,785 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:28,786 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 488\' -d \'{"isSearchCount": "not-a-boolean", "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=0.0&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=0.0&pageSize=query_val_pageSize\'' -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_9ssyno", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 482\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_9ssyno", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_wf2e1t", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 482\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_wf2e1t", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -2025-06-16 18:36:13,027 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 测试完成,最终状态: 失败 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据修改) -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:13,027 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:13,028 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,028 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,029 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:13,044 - RequiredHeadersSchemaCheck - INFO - API端点: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:13,045 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] -2025-06-16 18:36:13,045 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:13,045 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID -2025-06-16 18:36:13,045 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:13,045 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain -2025-06-16 18:36:13,045 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization -2025-06-16 18:36:13,045 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 -2025-06-16 18:36:13,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 -2025-06-16 18:36:13,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,045 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:13,045 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:13,045 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:13,046 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,046 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,047 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:13,047 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:13,047 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:13,047 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:13,047 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,047 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:13,061 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:13,061 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 -2025-06-16 18:36:13,061 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 -2025-06-16 18:36:13,061 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:13,062 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'coord', 'location'} -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,062 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,063 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:13,078 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 72, 'message': 'ut nisi cupidatat esse consectetur', 'data': True} -2025-06-16 18:36:13,078 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 72, 'message': 'ut nisi cupidatat esse consectetur', 'data': True} -2025-06-16 18:36:13,078 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 -2025-06-16 18:36:13,078 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 -2025-06-16 18:36:13,078 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 -2025-06-16 18:36:13,078 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:13,079 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:13,080 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:13,080 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:13,097 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { +2025-06-20 10:38:28,820 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 测试完成,最终状态: 失败 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据修改) +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,821 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,822 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,822 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:28,862 - RequiredHeadersSchemaCheck - INFO - API端点: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:28,862 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] +2025-06-20 10:38:28,862 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:28,862 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID +2025-06-20 10:38:28,862 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:28,863 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain +2025-06-20 10:38:28,863 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,863 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,863 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:28,890 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,891 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'location', 'coord'} +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,891 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:28,923 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 24, 'message': 'consequat exercitation velit eiusmod', 'data': True} +2025-06-20 10:38:28,923 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 24, 'message': 'consequat exercitation velit eiusmod', 'data': True} +2025-06-20 10:38:28,923 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:28,923 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:28,924 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:28,924 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:28,956 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { "method": "PUT", "url": "http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit", "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit", @@ -3120,18 +3118,18 @@ DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.3 "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "62", + "Content-Length": "53", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 7, \"message\": \"eiusmod tempor fugiat minim\", \"data\": true}" + "response_body": "{\"code\": 14, \"message\": \"ipsum nostrud et\", \"data\": false}" } -2025-06-16 18:36:13,097 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ +2025-06-20 10:38:28,956 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除" ] -2025-06-16 18:36:13,097 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: +2025-06-20 10:38:28,957 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: 你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。 合规性标准: @@ -3165,13 +3163,13 @@ API信息: "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "62", + "Content-Length": "53", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 7, \"message\": \"eiusmod tempor fugiat minim\", \"data\": true}" + "response_body": "{\"code\": 14, \"message\": \"ipsum nostrud et\", \"data\": false}" } 请以如下JSON格式输出: @@ -3180,7 +3178,7 @@ API信息: ... ] -2025-06-16 18:36:13,098 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: +2025-06-20 10:38:28,957 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: { "model": "qwen-plus", "messages": [ @@ -3190,19 +3188,19 @@ API信息: }, { "role": "user", - "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"PUT\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit\",\n \"operationId\": \"put__api_dms_dms_instance_code_v1_cd_geo_unit_135749\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {\n \"id\": \"dsid\"\n },\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\"\n },\n \"body\": {\n \"id\": \"example_string\",\n \"version\": \"example_string\"\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"62\",\n \"success\": \"false\",\n \"Date\": \"Mon, 16 Jun 2025 10:36:13 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 7, \\\"message\\\": \\\"eiusmod tempor fugiat minim\\\", \\\"data\\\": true}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" + "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"PUT\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit\",\n \"operationId\": \"put__api_dms_dms_instance_code_v1_cd_geo_unit_135749\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {\n \"id\": \"dsid\"\n },\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\"\n },\n \"body\": {\n \"id\": \"example_string\",\n \"version\": \"example_string\"\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"53\",\n \"success\": \"false\",\n \"Date\": \"Fri, 20 Jun 2025 02:38:28 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 14, \\\"message\\\": \\\"ipsum nostrud et\\\", \\\"data\\\": false}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" } ], "max_tokens": 2048, "temperature": 0.2 } -2025-06-16 18:36:17,281 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: +2025-06-20 10:38:33,788 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: { "choices": [ { "message": { "role": "assistant", - "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了PUT方法,并且根据其路径和请求体内容判断,该操作符合PUT方法的语义,即用于更新资源。\"\n }\n]" + "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了PUT方法,并且根据其路径和操作内容(更新cd_geo_unit资源),符合PUT方法用于更新的语义。\"\n }\n]" }, "finish_reason": "stop", "index": 0, @@ -3211,132 +3209,132 @@ API信息: ], "object": "chat.completion", "usage": { - "prompt_tokens": 484, - "completion_tokens": 80, - "total_tokens": 564, + "prompt_tokens": 483, + "completion_tokens": 79, + "total_tokens": 562, "prompt_tokens_details": { "cached_tokens": 0 } }, - "created": 1750070177, + "created": 1750387114, "system_fingerprint": null, "model": "qwen-plus", - "id": "chatcmpl-bbd41acd-2c95-9b8a-9932-e67f47dadb41" + "id": "chatcmpl-65c2bbe7-3321-93a3-b7be-c02c1ea7c298" } -2025-06-16 18:36:17,283 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ +2025-06-20 10:38:33,788 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", "passed": true, - "reason": "当前API调用使用了PUT方法,并且根据其路径和请求体内容判断,该操作符合PUT方法的语义,即用于更新资源。" + "reason": "当前API调用使用了PUT方法,并且根据其路径和操作内容(更新cd_geo_unit资源),符合PUT方法用于更新的语义。" } ] -2025-06-16 18:36:17,283 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 -2025-06-16 18:36:17,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 -2025-06-16 18:36:17,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,284 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,332 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}} -2025-06-16 18:36:17,333 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200'] -2025-06-16 18:36:17,333 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义 -2025-06-16 18:36:17,333 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 -2025-06-16 18:36:17,333 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 -2025-06-16 18:36:17,333 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,333 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,333 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,333 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,333 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,334 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,335 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,335 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,335 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,335 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,335 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,335 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,335 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,359 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,360 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,361 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,361 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,379 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,380 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,381 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:33,788 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,789 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:33,848 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}} +2025-06-20 10:38:33,848 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200'] +2025-06-20 10:38:33,848 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义 +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,848 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:33,880 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,881 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:33,908 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,909 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 53\' -d \'{"id": "example_string", "version": "example_string"}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' @@ -3354,273 +3352,273 @@ DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-reque 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 53\' -d \'{"id": "example_string", "version": "example_string"}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 53\' -d \'{"id": "example_string", "version": "example_string"}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' -2025-06-16 18:36:17,399 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 -2025-06-16 18:36:17,399 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 -2025-06-16 18:36:17,399 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,400 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,400 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,401 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,423 - testcase.TC-CORE-FUNC-001 - INFO - 将根据路径 'responses.200.content.application/json.schema' 的schema验证响应体。 -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,428 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,429 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,444 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,445 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,461 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 -2025-06-16 18:36:17,461 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,462 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,463 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,463 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,463 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 不是HTTPS。跳过此测试用例的URL修改。 -2025-06-16 18:36:17,477 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,478 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:17,479 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. -2025-06-16 18:36:17,479 - testcase.TC-ERROR-4001-QUERY - DEBUG - _find_first_simple_type_parameter: Checking query parameter 'id'. -2025-06-16 18:36:17,479 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: Found simple type query parameter 'id' (type: string) via its 'schema'. -2025-06-16 18:36:17,479 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Target for type mismatch (query): Param='id', Path='id', Type='string' -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,479 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Preparing to modify query params for type mismatch. Target path: ['id'], Original type: string -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Generated mismatched value '12345' for original type 'string' at query path 'id'. -2025-06-16 18:36:17,480 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 id (键 'id') 处设置值为 '12345' -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Successfully set mismatched value in query params using util_set_value_at_path. -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. -2025-06-16 18:36:17,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,480 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:17,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:17,498 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.01735711097717285 -2025-06-16 18:36:17,498 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-QUERY' 执行失败。 -2025-06-16 18:36:17,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 失败 -2025-06-16 18:36:17,498 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,498 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,498 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,499 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:17,499 - 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-06-16 18:36:17,499 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:17,499 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... -2025-06-16 18:36:17,499 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=id, Type=string -2025-06-16 18:36:17,499 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=id, Type=string -2025-06-16 18:36:17,499 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): id, Original Type: string -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,499 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['id'], Original type: string -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'id'. -2025-06-16 18:36:17,500 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 id (键 'id') 处设置值为 '12345' -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. -2025-06-16 18:36:17,500 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,500 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:17,500 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:17,514 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.01427316665649414 -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,514 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,515 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:17,515 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:17,531 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.016118764877319336 -2025-06-16 18:36:17,531 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 -2025-06-16 18:36:17,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 -2025-06-16 18:36:17,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,531 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,531 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,532 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... -2025-06-16 18:36:17,532 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location. -2025-06-16 18:36:17,532 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint. -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,532 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:33,934 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,934 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:33,956 - testcase.TC-CORE-FUNC-001 - INFO - 将根据路径 'responses.200.content.application/json.schema' 的schema验证响应体。 +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:33,961 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,000 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,001 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,001 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,032 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,033 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,033 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,033 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 不是HTTPS。跳过此测试用例的URL修改。 +2025-06-20 10:38:34,055 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 +2025-06-20 10:38:34,055 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 +2025-06-20 10:38:34,055 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 +2025-06-20 10:38:34,055 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,055 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - _find_first_simple_type_parameter: Checking query parameter 'id'. +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: Found simple type query parameter 'id' (type: string) via its 'schema'. +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Target for type mismatch (query): Param='id', Path='id', Type='string' +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Preparing to modify query params for type mismatch. Target path: ['id'], Original type: string +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Generated mismatched value '12345' for original type 'string' at query path 'id'. +2025-06-20 10:38:34,056 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 id (键 'id') 处设置值为 '12345' +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Successfully set mismatched value in query params using util_set_value_at_path. +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,056 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:34,056 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.02333688735961914 +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-QUERY' 执行失败。 +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 失败 +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:34,080 - 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-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=id, Type=string +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=id, Type=string +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): id, Original Type: string +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['id'], Original type: string +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'id'. +2025-06-20 10:38:34,080 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 id (键 'id') 处设置值为 '12345' +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,080 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,080 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,081 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:34,081 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,081 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:34,081 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:34,103 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.02246689796447754 +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,103 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,103 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:34,103 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,104 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:34,104 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:34,130 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.025658130645751953 +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,130 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... +2025-06-20 10:38:34,130 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location. +2025-06-20 10:38:34,130 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint. +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,130 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 53\' -d \'{"id": "example_string", "version": "example_string"}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' @@ -3638,211 +3636,211 @@ DEBUG: curlify generated command (repr): 'curl -X PUT -H \'User-Agent: python-re 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 53\' -d \'{"id": "example_string", "version": "example_string"}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -2025-06-16 18:36:17,547 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。 -2025-06-16 18:36:17,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过 -2025-06-16 18:36:17,547 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,547 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,548 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['id', 'version'], 属性: ['id', 'version'] -2025-06-16 18:36:17,548 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'id' -2025-06-16 18:36:17,548 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'id' -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,549 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'id' 成功移除字段 'id' (原值: 'example_string')。 -2025-06-16 18:36:17,549 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'id'。 -2025-06-16 18:36:17,549 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,549 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,562 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。 -2025-06-16 18:36:17,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:17,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,563 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,564 - testcase.TC-ERROR-4003-QUERY - INFO - Found required 'query' parameter: 'id'. -2025-06-16 18:36:17,564 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。Target param to remove: id -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) -2025-06-16 18:36:17,564 - testcase.TC-ERROR-4003-QUERY - INFO - 为进行必填查询参数缺失测试,已从查询参数中移除 'id' (原值: 'dsid')。 -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,564 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-QUERY' 执行失败。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 失败 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 失败 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据删除) -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,585 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,586 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:17,586 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:17,587 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:17,587 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,587 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,601 - RequiredHeadersSchemaCheck - INFO - API端点: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:17,601 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] -2025-06-16 18:36:17,601 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:17,601 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID -2025-06-16 18:36:17,601 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:17,601 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain -2025-06-16 18:36:17,601 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization -2025-06-16 18:36:17,601 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 -2025-06-16 18:36:17,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 -2025-06-16 18:36:17,601 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,601 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,602 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:17,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:17,603 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,603 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,617 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,617 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 -2025-06-16 18:36:17,617 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 -2025-06-16 18:36:17,617 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,617 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,617 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,617 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,617 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,618 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'coord', 'location'} -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,618 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,634 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 81, 'message': 'eiusmod ad veniam nostrud est', 'data': False} -2025-06-16 18:36:17,634 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 81, 'message': 'eiusmod ad veniam nostrud est', 'data': False} -2025-06-16 18:36:17,634 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:17,634 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:17,635 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,635 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:17,636 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:17,654 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。 +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过 +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,152 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: ['id', 'version'], 属性: ['id', 'version'] +2025-06-20 10:38:34,152 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略1: 在路径 root 找到可直接移除的必填字段: 'id' +2025-06-20 10:38:34,152 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'id' +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,152 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'id' 成功移除字段 'id' (原值: 'example_string')。 +2025-06-20 10:38:34,152 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'id'。 +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,152 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。 +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,176 - testcase.TC-ERROR-4003-QUERY - INFO - Found required 'query' parameter: 'id'. +2025-06-20 10:38:34,176 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。Target param to remove: id +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'id': 'dsid'} +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749': application/json +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 object 类型数据 for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body). Properties: ['id', 'version'] +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.id): example_string +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - [put__api_dms_dms_instance_code_v1_cd_geo_unit_135749] 生成 string 类型数据 ('') for (context: put__api_dms_dms_instance_code_v1_cd_geo_unit_135749_body.version): example_string +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'put__api_dms_dms_instance_code_v1_cd_geo_unit_135749' (type: ) +2025-06-20 10:38:34,176 - testcase.TC-ERROR-4003-QUERY - INFO - 为进行必填查询参数缺失测试,已从查询参数中移除 'id' (原值: 'dsid')。 +2025-06-20 10:38:34,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,177 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-QUERY' 执行失败。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 失败 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 失败 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据删除) +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,199 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,199 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:34,200 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:34,200 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:34,200 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:34,200 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:34,200 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,200 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,220 - RequiredHeadersSchemaCheck - INFO - API端点: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:34,220 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] +2025-06-20 10:38:34,220 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:34,220 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID +2025-06-20 10:38:34,220 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:34,220 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain +2025-06-20 10:38:34,220 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization +2025-06-20 10:38:34,220 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 +2025-06-20 10:38:34,220 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 +2025-06-20 10:38:34,220 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,220 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,220 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,220 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,220 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,221 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,251 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,251 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,251 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'location', 'coord'} +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,252 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,278 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 47, 'message': 'fugiat velit veniam officia', 'data': True} +2025-06-20 10:38:34,278 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 47, 'message': 'fugiat velit veniam officia', 'data': True} +2025-06-20 10:38:34,279 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:34,279 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:34,279 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:34,301 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { "method": "DELETE", "url": "http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit", "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit", @@ -3869,18 +3867,18 @@ DEBUG: curlify generated command (raw): curl -X PUT -H 'User-Agent: python-reque "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "53", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 64, \"message\": \"consequat nulla\", \"data\": true}" + "response_body": "{\"code\": 32, \"message\": \"incididunt tempor\", \"data\": true}" } -2025-06-16 18:36:17,654 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ +2025-06-20 10:38:34,301 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除" ] -2025-06-16 18:36:17,654 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: +2025-06-20 10:38:34,301 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: 你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。 合规性标准: @@ -3916,13 +3914,13 @@ API信息: "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "53", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 64, \"message\": \"consequat nulla\", \"data\": true}" + "response_body": "{\"code\": 32, \"message\": \"incididunt tempor\", \"data\": true}" } 请以如下JSON格式输出: @@ -3931,7 +3929,7 @@ API信息: ... ] -2025-06-16 18:36:17,654 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: +2025-06-20 10:38:34,301 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: { "model": "qwen-plus", "messages": [ @@ -3941,19 +3939,19 @@ API信息: }, { "role": "user", - "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"DELETE\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit\",\n \"operationId\": \"delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {\n \"id\": \"dsid\"\n },\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\"\n },\n \"body\": {\n \"version\": \"example_string\",\n \"data\": [\n \"example_string\"\n ]\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"51\",\n \"success\": \"false\",\n \"Date\": \"Mon, 16 Jun 2025 10:36:17 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 64, \\\"message\\\": \\\"consequat nulla\\\", \\\"data\\\": true}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" + "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"DELETE\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit\",\n \"operationId\": \"delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {\n \"id\": \"dsid\"\n },\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\"\n },\n \"body\": {\n \"version\": \"example_string\",\n \"data\": [\n \"example_string\"\n ]\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"53\",\n \"success\": \"false\",\n \"Date\": \"Fri, 20 Jun 2025 02:38:34 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 32, \\\"message\\\": \\\"incididunt tempor\\\", \\\"data\\\": true}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" } ], "max_tokens": 2048, "temperature": 0.2 } -2025-06-16 18:36:22,901 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: +2025-06-20 10:38:40,561 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: { "choices": [ { "message": { "role": "assistant", - "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"API调用使用了DELETE方法,并且其路径和操作表明它正在删除资源(/cd_geo_unit),符合DELETE方法的语义。\"\n }\n]" + "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"API使用了DELETE方法,并且其操作符合DELETE语义,即删除资源(/cd_geo_unit)。因此该标准通过。\"\n }\n]" }, "finish_reason": "stop", "index": 0, @@ -3963,81 +3961,81 @@ API信息: "object": "chat.completion", "usage": { "prompt_tokens": 486, - "completion_tokens": 78, - "total_tokens": 564, + "completion_tokens": 75, + "total_tokens": 561, "prompt_tokens_details": { "cached_tokens": 0 } }, - "created": 1750070183, + "created": 1750387121, "system_fingerprint": null, "model": "qwen-plus", - "id": "chatcmpl-c938e772-4409-901c-ac8d-9ed61cce622b" + "id": "chatcmpl-7780cc3f-6ecb-9bc8-975a-499ca9eb106c" } -2025-06-16 18:36:22,902 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ +2025-06-20 10:38:40,561 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", "passed": true, - "reason": "API调用使用了DELETE方法,并且其路径和操作表明它正在删除资源(/cd_geo_unit),符合DELETE方法的语义。" + "reason": "API使用了DELETE方法,并且其操作符合DELETE语义,即删除资源(/cd_geo_unit)。因此该标准通过。" } ] -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:22,902 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:22,903 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:22,959 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}} -2025-06-16 18:36:22,959 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200'] -2025-06-16 18:36:22,960 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义 -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:22,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:22,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:22,962 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,561 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,601 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}} +2025-06-20 10:38:40,602 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200'] +2025-06-20 10:38:40,602 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义 +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,602 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 53\' -d \'{"id": "example_string", "version": "example_string"}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 29' -d '{"version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 29\' -d \'{"version": "example_string"}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' @@ -4056,262 +4054,262 @@ DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python status_code: 200 responses: {'200': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, '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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -2025-06-16 18:36:22,990 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 -2025-06-16 18:36:22,990 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:22,990 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:22,991 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:22,992 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:22,992 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:22,992 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:22,992 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:22,992 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:22,992 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:22,992 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,012 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 -2025-06-16 18:36:23,012 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,013 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,014 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,031 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 -2025-06-16 18:36:23,031 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,032 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,033 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,033 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,034 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,050 - testcase.TC-CORE-FUNC-001 - INFO - 将根据路径 'responses.200.content.application/json.schema' 的schema验证响应体。 -2025-06-16 18:36:23,051 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 -2025-06-16 18:36:23,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 -2025-06-16 18:36:23,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,051 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,051 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,051 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,052 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,053 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,068 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,069 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,070 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,071 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,089 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 -2025-06-16 18:36:23,089 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:23,089 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,089 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,089 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,090 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,090 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,091 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,091 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 不是HTTPS。跳过此测试用例的URL修改。 -2025-06-16 18:36:23,110 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 -2025-06-16 18:36:23,110 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 -2025-06-16 18:36:23,110 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 -2025-06-16 18:36:23,110 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,111 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,111 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:23,112 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. -2025-06-16 18:36:23,112 - testcase.TC-ERROR-4001-QUERY - DEBUG - _find_first_simple_type_parameter: Checking query parameter 'id'. -2025-06-16 18:36:23,112 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: Found simple type query parameter 'id' (type: string) via its 'schema'. -2025-06-16 18:36:23,112 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Target for type mismatch (query): Param='id', Path='id', Type='string' -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,112 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Preparing to modify query params for type mismatch. Target path: ['id'], Original type: string -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Generated mismatched value '12345' for original type 'string' at query path 'id'. -2025-06-16 18:36:23,113 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 id (键 'id') 处设置值为 '12345' -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Successfully set mismatched value in query params using util_set_value_at_path. -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. -2025-06-16 18:36:23,113 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,113 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:23,113 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:23,127 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.013712882995605469 -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-QUERY' 执行失败。 -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 失败 -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,127 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:23,128 - 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-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:23,128 - 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-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'. -2025-06-16 18:36:23,128 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345' -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,128 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,128 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:23,129 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,626 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,658 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,659 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,689 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,689 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,711 - testcase.TC-CORE-FUNC-001 - INFO - 将根据路径 'responses.200.content.application/json.schema' 的schema验证响应体。 +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,711 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,712 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,712 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,712 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,712 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,712 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,735 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 +2025-06-20 10:38:40,735 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 +2025-06-20 10:38:40,735 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,735 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,735 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,735 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,735 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,736 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,757 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,757 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,757 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 不是HTTPS。跳过此测试用例的URL修改。 +2025-06-20 10:38:40,780 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - _find_first_simple_type_parameter: Checking query parameter 'id'. +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: Found simple type query parameter 'id' (type: string) via its 'schema'. +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Target for type mismatch (query): Param='id', Path='id', Type='string' +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Preparing to modify query params for type mismatch. Target path: ['id'], Original type: string +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Generated mismatched value '12345' for original type 'string' at query path 'id'. +2025-06-20 10:38:40,781 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 id (键 'id') 处设置值为 '12345' +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - [TC-ERROR-4001-QUERY] Successfully set mismatched value in query params using util_set_value_at_path. +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,781 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:40,781 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:40,806 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.024825096130371094 +2025-06-20 10:38:40,806 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-QUERY' 执行失败。 +2025-06-20 10:38:40,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 失败 +2025-06-20 10:38:40,806 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:40,807 - 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-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:40,807 - 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-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'. +2025-06-20 10:38:40,807 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345' +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,807 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:40,807 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 57\' -d \'{"version": "example_string", "data": ["example_string"]}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 57\' -d \'{"version": "example_string", "data": ["example_string"]}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' @@ -4328,293 +4326,293 @@ DEBUG: curlify generated command (repr): 'curl -X DELETE -H \'User-Agent: python 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 57\' -d \'{"version": "example_string", "data": ["example_string"]}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 46' -d '{"version": 12345, "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -2025-06-16 18:36:23,143 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.014533042907714844 -2025-06-16 18:36:23,143 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 -2025-06-16 18:36:23,143 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,144 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,144 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:23,144 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... -2025-06-16 18:36:23,144 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:23,144 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. -2025-06-16 18:36:23,144 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. -2025-06-16 18:36:23,144 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,145 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:23,145 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:23,159 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.01357412338256836 -2025-06-16 18:36:23,159 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 -2025-06-16 18:36:23,159 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 -2025-06-16 18:36:23,159 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,160 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,160 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... -2025-06-16 18:36:23,161 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location. -2025-06-16 18:36:23,161 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint. -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,161 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,162 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,162 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。 -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过 -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,176 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,177 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['version', 'data'] -2025-06-16 18:36:23,177 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 -2025-06-16 18:36:23,177 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. -2025-06-16 18:36:23,177 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,177 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,178 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,194 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:23,195 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,196 - testcase.TC-ERROR-4003-QUERY - INFO - Found required 'query' parameter: 'id'. -2025-06-16 18:36:23,196 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。Target param to remove: id -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) -2025-06-16 18:36:23,196 - testcase.TC-ERROR-4003-QUERY - INFO - 为进行必填查询参数缺失测试,已从查询参数中移除 'id' (原值: 'dsid')。 -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,196 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,210 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-QUERY' 执行失败。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 失败 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 失败 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据添加) -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,212 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:23,212 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,213 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,232 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:23,232 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] -2025-06-16 18:36:23,232 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:23,233 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID -2025-06-16 18:36:23,233 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:23,233 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain -2025-06-16 18:36:23,233 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:23,233 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,234 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,234 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,249 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,249 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,250 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'coord', 'location'} -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:23,250 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:23,251 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,251 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:23,265 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 20, 'message': 'do anim consequat dolore qui', 'data': True} -2025-06-16 18:36:23,265 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 20, 'message': 'do anim consequat dolore qui', 'data': True} -2025-06-16 18:36:23,265 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:23,265 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:23,266 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:23,266 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:23,267 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.027530908584594727 +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,835 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. +2025-06-20 10:38:40,835 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. +2025-06-20 10:38:40,836 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. +2025-06-20 10:38:40,836 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,836 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,836 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,836 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:40,836 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,836 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:40,836 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:40,858 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.021560192108154297 +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,858 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... +2025-06-20 10:38:40,858 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location. +2025-06-20 10:38:40,858 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint. +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,858 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。 +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过 +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,880 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['version', 'data'] +2025-06-20 10:38:40,880 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 +2025-06-20 10:38:40,880 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. +2025-06-20 10:38:40,880 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,880 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,881 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,881 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,904 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('id') 的 schema... +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('tenant-id') 的 schema... +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('Authorization') 的 schema... +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,904 - testcase.TC-ERROR-4003-QUERY - INFO - Found required 'query' parameter: 'id'. +2025-06-20 10:38:40,904 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。Target param to remove: id +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,904 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'id': 'dsid'} +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750': application/json +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 object 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.version): example_string +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 array 类型数据 for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - [delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750] 生成 string 类型数据 ('') for (context: delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750_body.data[0]): example_string +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'delete__api_dms_dms_instance_code_v1_cd_geo_unit_135750' (type: ) +2025-06-20 10:38:40,905 - testcase.TC-ERROR-4003-QUERY - INFO - 为进行必填查询参数缺失测试,已从查询参数中移除 'id' (原值: 'dsid')。 +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,905 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,926 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-QUERY' 执行失败。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 失败 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 失败 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据添加) +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。 +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,927 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,928 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,928 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,954 - RequiredHeadersSchemaCheck - INFO - API端点: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:40,954 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] +2025-06-20 10:38:40,954 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:40,954 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID +2025-06-20 10:38:40,954 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:40,954 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain +2025-06-20 10:38:40,954 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization +2025-06-20 10:38:40,954 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 +2025-06-20 10:38:40,954 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 +2025-06-20 10:38:40,954 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,954 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,955 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:40,955 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:40,956 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:40,956 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:40,956 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,956 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,981 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:40,981 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 +2025-06-20 10:38:40,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 +2025-06-20 10:38:40,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,981 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:40,981 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:40,981 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:40,982 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'location', 'coord'} +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:40,982 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:40,983 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:41,005 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 27, 'message': 'laborum dolore proident minim', 'data': True} +2025-06-20 10:38:41,006 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 27, 'message': 'laborum dolore proident minim', 'data': True} +2025-06-20 10:38:41,006 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:41,006 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:41,007 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:41,007 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 46\' -d \'{"version": 12345, "data": ["example_string"]}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 57\' -d \'{"version": "example_string", "data": ["example_string"]}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid\'' @@ -4630,7 +4628,7 @@ DEBUG: curlify generated command (raw): curl -H 'User-Agent: python-requests/2.3 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' -2025-06-16 18:36:23,281 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { +2025-06-20 10:38:41,031 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { "method": "POST", "url": "http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit", "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit", @@ -4660,18 +4658,18 @@ DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/ "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "62", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", + "Date": "Fri, 20 Jun 2025 02:38:41 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 98, \"message\": \"laboris ex qui\", \"data\": false}" + "response_body": "{\"code\": 99, \"message\": \"cupidatat tempor veniam ut\", \"data\": true}" } -2025-06-16 18:36:23,281 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ +2025-06-20 10:38:41,031 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除" ] -2025-06-16 18:36:23,281 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: +2025-06-20 10:38:41,031 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: 你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。 合规性标准: @@ -4710,13 +4708,13 @@ API信息: "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "62", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", + "Date": "Fri, 20 Jun 2025 02:38:41 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 98, \"message\": \"laboris ex qui\", \"data\": false}" + "response_body": "{\"code\": 99, \"message\": \"cupidatat tempor veniam ut\", \"data\": true}" } 请以如下JSON格式输出: @@ -4725,7 +4723,7 @@ API信息: ... ] -2025-06-16 18:36:23,281 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: +2025-06-20 10:38:41,032 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: { "model": "qwen-plus", "messages": [ @@ -4735,19 +4733,19 @@ API信息: }, { "role": "user", - "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"POST\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit\",\n \"operationId\": \"post__api_dms_dms_instance_code_v1_cd_geo_unit_135748\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {},\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\"\n },\n \"body\": {\n \"version\": \"example_string\",\n \"data\": [\n {\n \"bsflag\": 0.0,\n \"wellCommonName\": \"example_string\",\n \"wellId\": \"example_string\",\n \"dataRegion\": \"example_string\"\n }\n ]\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"51\",\n \"success\": \"false\",\n \"Date\": \"Mon, 16 Jun 2025 10:36:23 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 98, \\\"message\\\": \\\"laboris ex qui\\\", \\\"data\\\": false}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" + "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"POST\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit\",\n \"operationId\": \"post__api_dms_dms_instance_code_v1_cd_geo_unit_135748\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {},\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\"\n },\n \"body\": {\n \"version\": \"example_string\",\n \"data\": [\n {\n \"bsflag\": 0.0,\n \"wellCommonName\": \"example_string\",\n \"wellId\": \"example_string\",\n \"dataRegion\": \"example_string\"\n }\n ]\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"62\",\n \"success\": \"false\",\n \"Date\": \"Fri, 20 Jun 2025 02:38:41 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 99, \\\"message\\\": \\\"cupidatat tempor veniam ut\\\", \\\"data\\\": true}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" } ], "max_tokens": 2048, "temperature": 0.2 } -2025-06-16 18:36:27,267 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: +2025-06-20 10:38:47,057 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: { "choices": [ { "message": { "role": "assistant", - "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了POST方法,并且根据其路径和操作内容(/cd_geo_unit),可以推测该请求的目的是创建或新增数据,符合POST方法的语义。\"\n }\n]" + "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了POST方法,且根据其路径和操作内容(/cd_geo_unit),可以合理推测该请求的目的是创建或新增资源,符合POST方法的语义。\"\n }\n]" }, "finish_reason": "stop", "index": 0, @@ -4756,203 +4754,203 @@ API信息: ], "object": "chat.completion", "usage": { - "prompt_tokens": 514, - "completion_tokens": 87, - "total_tokens": 601, + "prompt_tokens": 515, + "completion_tokens": 88, + "total_tokens": 603, "prompt_tokens_details": { "cached_tokens": 0 } }, - "created": 1750070187, + "created": 1750387127, "system_fingerprint": null, "model": "qwen-plus", - "id": "chatcmpl-f7f415a1-45c3-9089-8174-6aad8410402c" + "id": "chatcmpl-d66a2321-6f20-920f-b584-e91a7fe720ab" } -2025-06-16 18:36:27,268 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ +2025-06-20 10:38:47,057 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", "passed": true, - "reason": "当前API调用使用了POST方法,并且根据其路径和操作内容(/cd_geo_unit),可以推测该请求的目的是创建或新增数据,符合POST方法的语义。" + "reason": "当前API调用使用了POST方法,且根据其路径和操作内容(/cd_geo_unit),可以合理推测该请求的目的是创建或新增资源,符合POST方法的语义。" } ] -2025-06-16 18:36:27,268 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 -2025-06-16 18:36:27,268 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,269 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,270 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,271 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,325 - testcase.TC-RESTful-001 - INFO - responses: {'201': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}} -2025-06-16 18:36:27,325 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['201'] -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,326 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,327 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,350 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,373 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,374 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,390 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 -2025-06-16 18:36:27,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,391 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,391 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,407 - testcase.TC-CORE-FUNC-001 - INFO - 响应包含JSON体,但在API规范中未找到针对状态码 200 的JSON schema。跳过schema验证。 -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,407 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,058 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,059 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,099 - testcase.TC-RESTful-001 - INFO - responses: {'201': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}}}}} +2025-06-20 10:38:47,099 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['201'] +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,100 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,101 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,157 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 +2025-06-20 10:38:47,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,159 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,159 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,159 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,159 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,159 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,159 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,203 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,204 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,244 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:47,244 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,245 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,282 - testcase.TC-CORE-FUNC-001 - INFO - 响应包含JSON体,但在API规范中未找到针对状态码 200 的JSON schema。跳过schema验证。 +2025-06-20 10:38:47,282 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 +2025-06-20 10:38:47,282 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,283 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,284 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit @@ -4968,268 +4966,268 @@ DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/ 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,429 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,447 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,447 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,447 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 不是HTTPS。跳过此测试用例的URL修改。 -2025-06-16 18:36:27,463 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters. -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test. -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,463 - 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-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,463 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:27,463 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified. -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.016448020935058594 -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。 -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过 -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Initializing: Looking for a simple type field in request body for type mismatch test. -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['version'], Original type: string -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'. -2025-06-16 18:36:27,480 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345' -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,480 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:27,480 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.018336057662963867 -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,499 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:27,499 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:27,514 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.014952898025512695 -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,514 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,515 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... -2025-06-16 18:36:27,515 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location. -2025-06-16 18:36:27,515 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint. -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,515 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,533 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。 -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过 -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,534 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['version', 'data'] -2025-06-16 18:36:27,534 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略2: 在数组属性 'data' (路径 root) 的元素内找到必填字段: 'bsflag'. 路径: ['data', 0, 'bsflag'] -2025-06-16 18:36:27,534 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data.0.bsflag' -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,534 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data.0.bsflag' 成功移除字段 'bsflag' (原值: '0.0')。 -2025-06-16 18:36:27,534 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data.0.bsflag'。 -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,534 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,361 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,362 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,426 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。 +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,426 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,427 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,427 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 不是HTTPS。跳过此测试用例的URL修改。 +2025-06-20 10:38:47,489 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,489 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:47,489 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. +2025-06-20 10:38:47,489 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters. +2025-06-20 10:38:47,489 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test. +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,490 - 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-06-20 10:38:47,490 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:47,490 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,490 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,490 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,490 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:47,490 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,490 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:47,490 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:47,529 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified. +2025-06-20 10:38:47,529 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.03885698318481445 +2025-06-20 10:38:47,529 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。 +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过 +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,530 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:47,530 - 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-06-20 10:38:47,530 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:47,530 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... +2025-06-20 10:38:47,530 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=version, Type=string +2025-06-20 10:38:47,530 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=version, Type=string +2025-06-20 10:38:47,530 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): version, Original Type: string +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,530 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,531 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:47,531 - 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-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value '12345' for original type 'string' at path 'version'. +2025-06-20 10:38:47,531 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 version (键 'version') 处设置值为 '12345' +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. +2025-06-20 10:38:47,531 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,531 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:47,531 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:47,573 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.04194808006286621 +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,574 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,574 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:47,575 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,575 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:47,575 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:47,631 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.05596494674682617 +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,631 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... +2025-06-20 10:38:47,631 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No field with enum constraints found in any location. +2025-06-20 10:38:47,631 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] No suitable enum field found for this endpoint. +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,631 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,632 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4006' 执行成功。 +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 通过 +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,657 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['version', 'data'] +2025-06-20 10:38:47,657 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 策略2: 在数组属性 'data' (路径 root) 的元素内找到必填字段: 'bsflag'. 路径: ['data', 0, 'bsflag'] +2025-06-20 10:38:47,657 - testcase.TC-ERROR-4003-BODY - INFO - Found a removable field path in 'request body' schema: 'data.0.bsflag' +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,657 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 从路径 'data.0.bsflag' 成功移除字段 'bsflag' (原值: '0.0')。 +2025-06-20 10:38:47,657 - testcase.TC-ERROR-4003-BODY - INFO - 为进行必填字段缺失测试,已通过工具方法从请求体中移除字段路径 'data.0.bsflag'。 +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,657 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' @@ -5244,307 +5242,307 @@ DEBUG: curlify generated command (repr): 'curl -H \'User-Agent: python-requests/ 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 137' -d '{"version": "example_string", "data": [{"wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。 -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,548 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. -2025-06-16 18:36:27,548 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。Target param to remove: None -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:27,548 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:27,561 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 失败 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} (地质单元查询详情) -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 -2025-06-16 18:36:27,561 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-16 18:36:27,561 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,562 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:27,562 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:27,562 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,562 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,562 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,562 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,562 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,562 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:27,580 - RequiredHeadersSchemaCheck - INFO - API端点: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} -2025-06-16 18:36:27,580 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] -2025-06-16 18:36:27,580 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:27,580 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID -2025-06-16 18:36:27,580 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None -2025-06-16 18:36:27,580 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain -2025-06-16 18:36:27,580 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,580 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:27,580 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:27,580 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,580 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,580 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,580 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,580 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,580 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,581 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:27,595 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,595 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:27,595 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:27,595 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,595 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,595 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,595 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:27,595 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,596 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'coord', 'location'} -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,596 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 75, 'message': 'quis consectetur anim tempor fugiat', 'data': {'total': 69, 'list': [{'dsid': '78', 'dataRegion': 'pariatur est nostrud Duis', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '66', 'dataRegion': 'nisi consequat dolore ullamco', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '89', 'dataRegion': 'dolore eiusmod', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 75, 'message': 'quis consectetur anim tempor fugiat', 'data': {'total': 69, 'list': [{'dsid': '78', 'dataRegion': 'pariatur est nostrud Duis', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '66', 'dataRegion': 'nisi consequat dolore ullamco', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '89', 'dataRegion': 'dolore eiusmod', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - response_data:{'total': 69, 'list': [{'dsid': '78', 'dataRegion': 'pariatur est nostrud Duis', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '66', 'dataRegion': 'nisi consequat dolore ullamco', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '89', 'dataRegion': 'dolore eiusmod', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]} -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - response_data:[{'dsid': '78', 'dataRegion': 'pariatur est nostrud Duis', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '66', 'dataRegion': 'nisi consequat dolore ullamco', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '89', 'dataRegion': 'dolore eiusmod', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}] -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '78', 'dataRegion': 'pariatur est nostrud Duis', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '66', 'dataRegion': 'nisi consequat dolore ullamco', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '89', 'dataRegion': 'dolore eiusmod', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} -2025-06-16 18:36:27,610 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:27,610 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:27,610 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:27,610 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,610 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,610 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,610 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:27,610 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:27,610 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:27,611 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:47,679 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4003-BODY' 执行失败。 +2025-06-20 10:38:47,679 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:47,679 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,679 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('tenant-id') 的 schema... +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('Authorization') 的 schema... +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '201' content 'application/json' 的 schema... +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,680 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. +2025-06-20 10:38:47,680 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。Target param to remove: None +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:47,680 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:47,701 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 失败 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} (地质单元查询详情) +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-CORE-FUNC-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-RESTful-003' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-SECURITY-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4002' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4006' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。 +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 发现了 18 个适用的测试用例 (已排序): ['TC-HEADER-001', 'TC-STATUS-001', 'TC-SECURITY-002', 'TC-LLM-COMPLIANCE-001', 'TC-RESTful-001', 'TC-DMS-PAGINATION-001', 'TC-RESTful-002', 'TC-DMS-CORE-SCHEMA-001', 'TC-CORE-FUNC-001', 'TC-RESTful-003', 'TC-DMS-URL-VERSION-001', '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-06-20 10:38:47,701 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,701 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:47,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:47,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,702 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: RequiredHeadersSchemaCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,702 - RequiredHeadersSchemaCheck - INFO - 测试用例 TC-HEADER-001 (必需请求头Schema验证) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-HEADER-001' (必需请求头Schema验证) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,702 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:47,723 - RequiredHeadersSchemaCheck - INFO - API端点: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} +2025-06-20 10:38:47,724 - RequiredHeadersSchemaCheck - INFO - 发现的header参数: [{"name": "tenant-id", "in": "header", "required": true, "description": "tenant-id (Only:undefined)", "schema": {"type": "string"}}, {"name": "Authorization", "in": "header", "required": true, "description": "Authorization (Only:undefined)", "schema": {"type": "string"}}] +2025-06-20 10:38:47,724 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Tenant-ID: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:47,724 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Tenant-ID +2025-06-20 10:38:47,724 - RequiredHeadersSchemaCheck - INFO - 检查请求头 X-Data-Domain: 找到=False, 必需=False, 名称=None +2025-06-20 10:38:47,724 - RequiredHeadersSchemaCheck - WARNING - 规范验证失败: 缺少必需的请求头 X-Data-Domain +2025-06-20 10:38:47,724 - RequiredHeadersSchemaCheck - INFO - 检查请求头 Authorization: 找到=True, 必需=True, 名称=Authorization +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,724 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:47,724 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:47,724 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,724 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,724 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,724 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: StatusCode200Check 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,724 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-STATUS-001' (基本状态码 200 检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:47,724 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,725 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:47,750 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。 +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过 +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-002' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,750 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:47,750 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:47,750 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,750 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,750 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,750 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,750 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: EncryptedFieldsCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,751 - testcase.TC-SECURITY-002 - INFO - 测试用例 TC-SECURITY-002 (敏感字段加密检查) 已初始化,将检查以下敏感字段是否加密: {'position', 'location', 'coord'} +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-002' (敏感字段加密检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,751 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - response_context.json_content: {'code': 90, 'message': 'mollit ad amet quis', 'data': {'total': 86, 'list': [{'dsid': '75', 'dataRegion': 'Ut', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '48', 'dataRegion': 'cupidatat velit', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '59', 'dataRegion': 'elit sit amet incididunt', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - response_data:{'code': 90, 'message': 'mollit ad amet quis', 'data': {'total': 86, 'list': [{'dsid': '75', 'dataRegion': 'Ut', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '48', 'dataRegion': 'cupidatat velit', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '59', 'dataRegion': 'elit sit amet incididunt', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]}} +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - response_data:{'total': 86, 'list': [{'dsid': '75', 'dataRegion': 'Ut', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '48', 'dataRegion': 'cupidatat velit', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '59', 'dataRegion': 'elit sit amet incididunt', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}]} +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - response_data:[{'dsid': '75', 'dataRegion': 'Ut', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '48', 'dataRegion': 'cupidatat velit', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}, {'dsid': '59', 'dataRegion': 'elit sit amet incididunt', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None}] +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '75', 'dataRegion': 'Ut', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '48', 'dataRegion': 'cupidatat velit', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - response_data:{'dsid': '59', 'dataRegion': 'elit sit amet incididunt', 'gasReleaseMon': None, 'gasReleaseYear': None, 'releaseGasCum': None} +2025-06-20 10:38:47,781 - testcase.TC-SECURITY-002 - INFO - 未在响应中找到需要检查的敏感字段。 +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-SECURITY-002' 执行成功。 +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-002' 执行完毕,状态: 通过 +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-LLM-COMPLIANCE-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:47,781 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:47,781 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:47,781 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,781 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,781 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,781 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: LLMComplianceCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:47,781 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 已加载合规性标准: ['API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除'] +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-LLM-COMPLIANCE-001' (LLM合规性综合检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:47,781 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:47,782 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_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\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 137\' -d \'{"version": "example_string", "data": [{"wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' 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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit 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 \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 152\' -d \'{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit' @@ -5555,7 +5553,7 @@ DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-re DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:27,623 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { +2025-06-20 10:38:47,804 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-API信息收集: { "method": "GET", "url": "http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id", "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}", @@ -5615,18 +5613,18 @@ DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-reque "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "184", + "Content-Length": "406", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 47, \"message\": \"sunt\", \"data\": {\"total\": 81, \"list\": [{\"dsid\": \"24\", \"dataRegion\": \"sed velit consequat reprehenderit\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" + "response_body": "{\"code\": 60, \"message\": \"occaecat sint culpa\", \"data\": {\"total\": 61, \"list\": [{\"dsid\": \"19\", \"dataRegion\": \"aute voluptate\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}, {\"dsid\": \"97\", \"dataRegion\": \"eiusmod ullamco enim\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}, {\"dsid\": \"85\", \"dataRegion\": \"Lorem culpa tempor\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" } -2025-06-16 18:36:27,623 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ +2025-06-20 10:38:47,805 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM合规性检查-标准: [ "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除" ] -2025-06-16 18:36:27,623 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: +2025-06-20 10:38:47,805 - testcase.TC-LLM-COMPLIANCE-001 - INFO - 发送给LLM的prompt: 你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。 合规性标准: @@ -5695,13 +5693,13 @@ API信息: "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "184", + "Content-Length": "406", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" }, - "response_body": "{\"code\": 47, \"message\": \"sunt\", \"data\": {\"total\": 81, \"list\": [{\"dsid\": \"24\", \"dataRegion\": \"sed velit consequat reprehenderit\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" + "response_body": "{\"code\": 60, \"message\": \"occaecat sint culpa\", \"data\": {\"total\": 61, \"list\": [{\"dsid\": \"19\", \"dataRegion\": \"aute voluptate\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}, {\"dsid\": \"97\", \"dataRegion\": \"eiusmod ullamco enim\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}, {\"dsid\": \"85\", \"dataRegion\": \"Lorem culpa tempor\", \"gasReleaseMon\": null, \"gasReleaseYear\": null, \"releaseGasCum\": null}]}}" } 请以如下JSON格式输出: @@ -5710,7 +5708,7 @@ API信息: ... ] -2025-06-16 18:36:27,623 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: +2025-06-20 10:38:47,805 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Request Payload: { "model": "qwen-plus", "messages": [ @@ -5720,19 +5718,19 @@ API信息: }, { "role": "user", - "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"GET\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}\",\n \"operationId\": \"get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {},\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\",\n \"version\": \"1.0.0\",\n \"id\": \"example_id\"\n },\n \"body\": {\n \"isSearchCount\": true,\n \"query\": {\n \"dataRegions\": [\n \"example_string\"\n ],\n \"fields\": [\n \"example_string\"\n ],\n \"filter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"groupFields\": [\n \"example_string\"\n ],\n \"groupFilter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"sort\": {}\n }\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"184\",\n \"success\": \"false\",\n \"Date\": \"Mon, 16 Jun 2025 10:36:27 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 47, \\\"message\\\": \\\"sunt\\\", \\\"data\\\": {\\\"total\\\": 81, \\\"list\\\": [{\\\"dsid\\\": \\\"24\\\", \\\"dataRegion\\\": \\\"sed velit consequat reprehenderit\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null}]}}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" + "content": "\n你是一位API合规性专家。请根据以下合规性标准,对给定的API调用信息进行逐条评估。每条标准请给出是否通过(true/false)和理由。\n\n合规性标准:\n[\n \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\"\n]\n\nAPI信息:\n{\n \"method\": \"GET\",\n \"url\": \"http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id\",\n \"path\": \"/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}\",\n \"operationId\": \"get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752\",\n \"headers\": {\n \"tenant-id\": \"header_val_tenant-id\",\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n \"query_params\": {},\n \"path_params\": {\n \"dms_instance_code\": \"example_dms_instance_code\",\n \"version\": \"1.0.0\",\n \"id\": \"example_id\"\n },\n \"body\": {\n \"isSearchCount\": true,\n \"query\": {\n \"dataRegions\": [\n \"example_string\"\n ],\n \"fields\": [\n \"example_string\"\n ],\n \"filter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"groupFields\": [\n \"example_string\"\n ],\n \"groupFilter\": {\n \"key\": \"example_string\",\n \"logic\": \"example_string\",\n \"realValue\": [\n {}\n ],\n \"singleValue\": {},\n \"subFilter\": [\n \"example_string\"\n ],\n \"symbol\": \"example_string\"\n },\n \"sort\": {}\n }\n },\n \"response_status\": 200,\n \"response_headers\": {\n \"Vary\": \"Origin\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"Content-Length\": \"406\",\n \"success\": \"false\",\n \"Date\": \"Fri, 20 Jun 2025 02:38:47 GMT\",\n \"Connection\": \"keep-alive\",\n \"Keep-Alive\": \"timeout=5\"\n },\n \"response_body\": \"{\\\"code\\\": 60, \\\"message\\\": \\\"occaecat sint culpa\\\", \\\"data\\\": {\\\"total\\\": 61, \\\"list\\\": [{\\\"dsid\\\": \\\"19\\\", \\\"dataRegion\\\": \\\"aute voluptate\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null}, {\\\"dsid\\\": \\\"97\\\", \\\"dataRegion\\\": \\\"eiusmod ullamco enim\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null}, {\\\"dsid\\\": \\\"85\\\", \\\"dataRegion\\\": \\\"Lorem culpa tempor\\\", \\\"gasReleaseMon\\\": null, \\\"gasReleaseYear\\\": null, \\\"releaseGasCum\\\": null}]}}\"\n}\n\n请以如下JSON格式输出:\n[\n {\"criterion\": \"标准内容\", \"passed\": true/false, \"reason\": \"理由\"},\n ...\n]\n" } ], "max_tokens": 2048, "temperature": 0.2 } -2025-06-16 18:36:34,114 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: +2025-06-20 10:38:52,885 - ddms_compliance_suite.llm_utils.llm_service - DEBUG - LLM API Response: { "choices": [ { "message": { "role": "assistant", - "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了GET方法,并且其路径和参数表明它用于检索数据,符合标准。\"\n }\n]" + "content": "[\n {\n \"criterion\": \"API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除\",\n \"passed\": true,\n \"reason\": \"当前API调用使用了GET方法,并且其路径和参数表明它正在检索特定id(example_id)的数据,符合GET方法的用途。\"\n }\n]" }, "finish_reason": "stop", "index": 0, @@ -5741,256 +5739,256 @@ API信息: ], "object": "chat.completion", "usage": { - "prompt_tokens": 718, - "completion_tokens": 70, - "total_tokens": 788, + "prompt_tokens": 802, + "completion_tokens": 79, + "total_tokens": 881, "prompt_tokens_details": { "cached_tokens": 0 } }, - "created": 1750070194, + "created": 1750387133, "system_fingerprint": null, "model": "qwen-plus", - "id": "chatcmpl-59b3e6f2-8738-9380-9a4f-8cb945385ea6" + "id": "chatcmpl-e1b203ef-2689-9c82-8ff1-ed3b5c4cc245" } -2025-06-16 18:36:34,114 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ +2025-06-20 10:38:52,886 - testcase.TC-LLM-COMPLIANCE-001 - INFO - LLM原始响应: [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", "passed": true, - "reason": "当前API调用使用了GET方法,并且其路径和参数表明它用于检索数据,符合标准。" + "reason": "当前API调用使用了GET方法,并且其路径和参数表明它正在检索特定id(example_id)的数据,符合GET方法的用途。" } ] -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,114 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,114 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,114 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,114 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,114 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,114 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,114 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,115 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,154 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}}}}} -2025-06-16 18:36:34,154 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200'] -2025-06-16 18:36:34,154 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义 -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,154 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,154 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,154 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,154 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,154 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,154 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,154 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,155 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,178 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,178 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,178 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,178 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,178 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,178 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,178 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,179 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,179 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,201 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,201 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,201 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,201 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,201 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,201 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,201 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,202 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:52,886 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-LLM-COMPLIANCE-001' 执行成功。 +2025-06-20 10:38:52,886 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-LLM-COMPLIANCE-001' 执行完毕,状态: 通过 +2025-06-20 10:38:52,886 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,887 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:52,887 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:52,887 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:52,887 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:52,887 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:52,887 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:52,887 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,887 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,887 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,887 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: CoreNamingStructureTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-001' (核心命名与结构规范检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:52,888 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:52,889 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:52,890 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:52,890 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,890 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:52,933 - testcase.TC-RESTful-001 - INFO - responses: {'200': {'description': 'Successful Operation (from YAPI res_body)', 'content': {'application/json': {'schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}}}}} +2025-06-20 10:38:52,933 - testcase.TC-RESTful-001 - INFO - 检查响应定义: status_code=200, 可用响应定义=['200'] +2025-06-20 10:38:52,933 - testcase.TC-RESTful-001 - INFO - 找到精确状态码 200 的响应定义 +2025-06-20 10:38:52,933 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-001' 执行成功。 +2025-06-20 10:38:52,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-001' 执行完毕,状态: 通过 +2025-06-20 10:38:52,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-PAGINATION-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,933 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:52,933 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:52,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:52,933 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:52,934 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:52,934 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:52,934 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,934 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,934 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,934 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: PaginationParamsCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-PAGINATION-001' (分页参数检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,934 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,935 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:52,960 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-PAGINATION-001' 执行成功。 +2025-06-20 10:38:52,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-PAGINATION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:52,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-002' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,960 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:52,960 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:52,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:52,960 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:52,960 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:52,960 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:52,961 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,961 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,961 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,961 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResourcePathNounCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-002' (资源路径名词检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,961 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,962 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,963 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:52,986 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-002' 执行成功。 +2025-06-20 10:38:52,986 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-002' 执行完毕,状态: 通过 +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-CORE-SCHEMA-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:52,987 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:52,987 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:52,987 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,987 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,987 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,987 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaFormatCheck 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-CORE-SCHEMA-001' (DMS核心存储服务API响应格式检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:52,987 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:52,988 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' @@ -6001,238 +5999,238 @@ DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-re DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,221 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,221 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,221 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,221 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,221 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,221 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,221 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,221 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,222 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,240 - testcase.TC-CORE-FUNC-001 - INFO - 将根据路径 'responses.200.content.application/json.schema' 的schema验证响应体。 -2025-06-16 18:36:34,240 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 -2025-06-16 18:36:34,240 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 -2025-06-16 18:36:34,240 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,240 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,240 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,240 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,240 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,241 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,241 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,241 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,241 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,241 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,241 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,241 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,259 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,259 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,259 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,259 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,259 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,259 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,259 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,260 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,276 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,276 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,276 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,276 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,276 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,276 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,276 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,276 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,277 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,277 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' 不是HTTPS。跳过此测试用例的URL修改。 +2025-06-20 10:38:53,016 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行成功。 +2025-06-20 10:38:53,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-CORE-SCHEMA-001' 执行完毕,状态: 通过 +2025-06-20 10:38:53,016 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-CORE-FUNC-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,016 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,017 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,017 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,017 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,017 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,017 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,017 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,017 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,017 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: ResponseSchemaValidationCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,018 - testcase.TC-CORE-FUNC-001 - INFO - 测试用例 'TC-CORE-FUNC-001' 已为端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-CORE-FUNC-001' (Response Body JSON Schema Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,018 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,019 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,055 - testcase.TC-CORE-FUNC-001 - INFO - 将根据路径 'responses.200.content.application/json.schema' 的schema验证响应体。 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-CORE-FUNC-001' 执行成功。 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-CORE-FUNC-001' 执行完毕,状态: 通过 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-RESTful-003' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,056 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,056 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,056 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,056 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,056 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,056 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TimeFormatCheckTestCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-RESTful-003' (时间字段ISO 8601格式检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,056 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,057 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-RESTful-003' 执行成功。 +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-RESTful-003' 执行完毕,状态: 通过 +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-DMS-URL-VERSION-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,082 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,082 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,082 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,082 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,082 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,082 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: URLVersionCheckCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-DMS-URL-VERSION-001' (DMS API URL版本号检查) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,082 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,083 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-DMS-URL-VERSION-001' 执行成功。 +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-DMS-URL-VERSION-001' 执行完毕,状态: 通过 +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-SECURITY-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,106 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,106 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,106 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,106 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,106 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,106 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: HTTPSMandatoryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,106 - testcase.TC-SECURITY-001 - INFO - 测试用例 'TC-SECURITY-001' 已为端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。 +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-SECURITY-001' (HTTPS Protocol Mandatory Verification) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,106 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,107 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,107 - testcase.TC-SECURITY-001 - WARNING - 原始URL 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' 不是HTTPS。跳过此测试用例的URL修改。 DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' @@ -6241,288 +6239,288 @@ DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-re DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,296 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,296 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,296 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,296 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,296 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,296 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,296 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,296 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} -2025-06-16 18:36:34,296 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. -2025-06-16 18:36:34,296 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters. -2025-06-16 18:36:34,296 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test. -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,296 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,297 - 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-06-16 18:36:34,297 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:34,297 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,297 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,297 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,297 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:34,297 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,297 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:34,297 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:34,316 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified. -2025-06-16 18:36:34,316 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.01862192153930664 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,316 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,316 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,316 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,316 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,316 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,316 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,316 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} -2025-06-16 18:36:34,316 - 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-06-16 18:36:34,316 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:34,316 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... -2025-06-16 18:36:34,316 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=isSearchCount, Type=boolean -2025-06-16 18:36:34,316 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=isSearchCount, Type=boolean -2025-06-16 18:36:34,316 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): isSearchCount, Original Type: boolean -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,316 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,317 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['isSearchCount'], Original type: boolean -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value 'not-a-boolean' for original type 'boolean' at path 'isSearchCount'. -2025-06-16 18:36:34,317 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 isSearchCount (键 'isSearchCount') 处设置值为 'not-a-boolean' -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. -2025-06-16 18:36:34,317 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,317 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:34,317 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:34,332 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.015293359756469727 -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,332 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,332 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,332 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,332 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,332 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,332 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,332 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,332 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} -2025-06-16 18:36:34,332 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... -2025-06-16 18:36:34,332 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json -2025-06-16 18:36:34,332 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. -2025-06-16 18:36:34,332 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. -2025-06-16 18:36:34,332 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,333 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] -2025-06-16 18:36:34,333 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: -2025-06-16 18:36:34,349 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.015764951705932617 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,349 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,349 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,349 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,349 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,349 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,349 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,349 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... -2025-06-16 18:36:34,349 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Found enum field in BODY at path: query.filter.logic -2025-06-16 18:36:34,349 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Target found in 'body' at path 'query.filter.logic'. Valid enums: ['AND', 'OR'], Desc: '逻辑操作符,可选值为:AND、OR' -2025-06-16 18:36:34,349 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Setting invalid enum value to 'invalid_enum_zi0ifg' (valid are ['AND', 'OR']). -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,349 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,350 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 query.filter.logic (键 'logic') 处设置值为 'invalid_enum_zi0ifg' -2025-06-16 18:36:34,350 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,350 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,131 - testcase.TC-SECURITY-001 - ERROR - 安全漏洞:API允许通过HTTP成功响应 (200)。 +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-SECURITY-001' 执行失败。 +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-SECURITY-001' 执行完毕,状态: 失败 +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-QUERY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,131 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,131 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,131 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,131 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,131 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,131 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchQueryParamCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,131 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' initialized for endpoint: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} +2025-06-20 10:38:53,131 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Initializing: Looking for a simple type query parameter for type mismatch test. +2025-06-20 10:38:53,131 - testcase.TC-ERROR-4001-QUERY - INFO - _find_first_simple_type_parameter: No suitable simple type field found for query parameters. +2025-06-20 10:38:53,131 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] No suitable simple type query parameter found for type mismatch test. +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-QUERY' (Error Code -1 - Query Parameter Type Mismatch Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,131 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,132 - 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-06-20 10:38:53,132 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:53,132 - testcase.TC-ERROR-4001-QUERY - DEBUG - TC-ERROR-4001-QUERY is focused on query parameters, generate_request_body will not modify the body. +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,132 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,132 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,132 - testcase.TC-ERROR-4001-QUERY - DEBUG - Test case 'TC-ERROR-4001-QUERY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:53,132 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,132 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:53,132 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:53,157 - testcase.TC-ERROR-4001-QUERY - INFO - [TC-ERROR-4001-QUERY] Skipped type mismatch (query) validation: No target query parameter was identified. +2025-06-20 10:38:53,157 - testcase.TC-ERROR-4001-QUERY - DEBUG - Hook: check_performance, elapsed: 0.024988889694213867 +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4001-QUERY' 执行成功。 +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-QUERY' 执行完毕,状态: 通过 +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4001-BODY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,157 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,157 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,157 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,157 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,157 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,157 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,157 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: TypeMismatchBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' initialized for endpoint: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} +2025-06-20 10:38:53,158 - 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-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - _find_simple_type_field_in_schema: Searching for simple type field in 'request body' schema... +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - INFO - Found simple type field: Path=isSearchCount, Type=boolean +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - INFO - _find_simple_type_field_in_schema: Found simple type field in 'request body': Path=isSearchCount, Type=boolean +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Target field for type mismatch (body): isSearchCount, Original Type: boolean +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4001-BODY' (Error Code -1 - Request Body Type Mismatch Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - TC-ERROR-4001-BODY is focused on request body, generate_query_params will not modify query parameters. +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: generate_headers, current keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Preparing to modify request body for type mismatch. Target path: ['isSearchCount'], Original type: boolean +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - INFO - [TC-ERROR-4001-BODY] Generated mismatched value 'not-a-boolean' for original type 'boolean' at path 'isSearchCount'. +2025-06-20 10:38:53,158 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 isSearchCount (键 'isSearchCount') 处设置值为 'not-a-boolean' +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - [TC-ERROR-4001-BODY] Successfully set mismatched value at path using util_set_value_at_path. +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,158 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - Test case 'TC-ERROR-4001-BODY' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:53,158 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,159 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:53,159 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:53,186 - testcase.TC-ERROR-4001-BODY - DEBUG - Hook: check_performance, elapsed: 0.027679920196533203 +2025-06-20 10:38:53,186 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4001-BODY' 执行失败。 +2025-06-20 10:38:53,186 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4001-BODY' 执行完毕,状态: 失败 +2025-06-20 10:38:53,186 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4002' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,187 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,187 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,187 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,187 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,187 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,187 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: NumberOutOfRangeCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' initialized for endpoint: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] Searching for a ranged numeric field... +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - DEBUG - Found request body schema in content type: application/json +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in request body. +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in query parameters. +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in path parameters. +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - DEBUG - [TC-ERROR-4002] Checking for ranged numeric field in header parameters. +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No ranged numeric field found in any location. +2025-06-20 10:38:53,187 - testcase.TC-ERROR-4002 - INFO - [TC-ERROR-4002] No suitable ranged numeric field found for this endpoint. +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4002' (Error Code -1 - Number Value Out of Range Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,187 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,188 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,188 - testcase.TC-ERROR-4002 - DEBUG - Hook: modify_request_url, original URL: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,188 - testcase.TC-ERROR-4002 - DEBUG - Test case 'TC-ERROR-4002' did not modify the URL via modify_request_url hook. +2025-06-20 10:38:53,188 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_url, url: http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,188 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_headers, header keys: ['tenant-id', 'Content-Type', 'Accept'] +2025-06-20 10:38:53,188 - testcase.TC-ERROR-4002 - DEBUG - Hook: validate_request_body, body type: +2025-06-20 10:38:53,214 - testcase.TC-ERROR-4002 - DEBUG - Hook: check_performance, elapsed: 0.026028156280517578 +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4002' 执行成功。 +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4002' 执行完毕,状态: 通过 +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4006' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,214 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,214 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,214 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,214 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,214 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,214 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,214 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: InvalidEnumValueCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,215 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Searching for a field with enum constraints... +2025-06-20 10:38:53,215 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Found enum field in BODY at path: query.filter.logic +2025-06-20 10:38:53,215 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Target found in 'body' at path 'query.filter.logic'. Valid enums: ['AND', 'OR'], Desc: '逻辑操作符,可选值为:AND、OR' +2025-06-20 10:38:53,215 - testcase.TC-ERROR-4006 - INFO - [TC-ERROR-4006] Setting invalid enum value to 'invalid_enum_uy507l' (valid are ['AND', 'OR']). +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4006' (Error Code 4006 - Invalid Enum Value Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,215 - ddms_compliance_suite.utils.schema_utils - INFO - [Util] 在路径 query.filter.logic (键 'logic') 处设置值为 'invalid_enum_uy507l' +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,215 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' @@ -6530,501 +6528,501 @@ DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-reque DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 488\' -d \'{"isSearchCount": "not-a-boolean", "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' -DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_zi0ifg", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4006' 执行失败。 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 失败 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['isSearchCount', 'query'] -2025-06-16 18:36:34,364 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 -2025-06-16 18:36:34,364 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. -2025-06-16 18:36:34,364 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,364 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,365 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,427 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... -2025-06-16 18:36:34,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput -2025-06-16 18:36:34,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO -2025-06-16 18:36:34,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,427 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) -2025-06-16 18:36:34,427 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. -2025-06-16 18:36:34,427 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。Target param to remove: None -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} -2025-06-16 18:36:34,428 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -2025-06-16 18:36:34,443 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 测试完成,最终状态: 失败 -2025-06-16 18:36:34,443 - __main__ - INFO - 开始执行API测试阶段 (Stages),目录: ./custom_stages -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行API测试阶段 (Stages)... -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - INFO - 发现了 1 个已定义的测试阶段: ['generic_crud_validation_stage'] -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - INFO - 将针对 2 个API分组评估测试阶段: ['公共分类', '地质单元'] -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - INFO - 处理测试阶段定义: ID='generic_crud_validation_stage', Name='Generic CRUD Validation Stage' -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'generic_crud_validation_stage' 的上下文,针对API分组: '公共分类' -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - DEBUG - For YAPI group '公共分类' (resolved ID: 17672), selected 1 endpoint objects. -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'generic_crud_validation_stage' 和分组 '公共分类' 实例化。API对象数量: 1. 元数据: {'name': '公共分类', 'description': '公共分类', 'id': 17672} -2025-06-16 18:36:34,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'generic_crud_validation_stage' 是否适用于API分组 '公共分类'... -2025-06-16 18:36:34,443 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Checking applicability of 'Generic CRUD Validation Stage' for API group '公共分类'. -2025-06-16 18:36:34,443 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Using default field/path configurations for group '公共分类'. Customize by overriding _determine_resource_config or cfg_* attributes. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['add', 'create', 'new', '添加', '新建', '创建']', target_method='POST', path_id_required=False, path_id_forbidden=True -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'POST'? True (Endpoint method: POST) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=True (required=False, forbidden=True) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: True, PathCond: True). Continuing search. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['add', 'create', 'new', '添加', '新建', '创建']', method='POST', path_id_required=False, path_id_forbidden=True -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']', target_method='None', path_id_required=False, path_id_forbidden=True -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']'? False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'None'? True (Endpoint method: POST) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=True (required=False, forbidden=True) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: True, PathCond: True). Continuing search. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']', method='None', path_id_required=False, path_id_forbidden=True -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']', target_method='GET', path_id_required=True, path_id_forbidden=False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'GET'? False (Endpoint method: POST) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']', method='GET', path_id_required=True, path_id_forbidden=False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['update', 'edit', 'put', '修改', '更新']', target_method='PUT', path_id_required=True, path_id_forbidden=False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['update', 'edit', 'put', '修改', '更新']'? False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'PUT'? False (Endpoint method: POST) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['update', 'edit', 'put', '修改', '更新']', method='PUT', path_id_required=True, path_id_forbidden=False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['delete', 'remove', '删除']', target_method='DELETE', path_id_required=False, path_id_forbidden=False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['delete', 'remove', '删除']'? False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'DELETE'? False (Endpoint method: POST) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=True (required=False, forbidden=False) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: False, PathCond: True). Continuing search. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['delete', 'remove', '删除']', method='DELETE', path_id_required=False, path_id_forbidden=False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - 'Generic CRUD Validation Stage' is NOT APPLICABLE for group '公共分类'. Missing required operations: ['create', 'detail', 'delete']. Discovered keys: {'create': None, 'list': None, 'detail': None, 'update': None, 'delete': None} -2025-06-16 18:36:34,444 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'generic_crud_validation_stage' 不适用于API分组 '公共分类'。跳过此分组。 -2025-06-16 18:36:34,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'generic_crud_validation_stage' 的上下文,针对API分组: '地质单元' -2025-06-16 18:36:34,444 - ddms_compliance_suite.test_orchestrator - DEBUG - For YAPI group '地质单元' (resolved ID: 18705), selected 5 endpoint objects. -2025-06-16 18:36:34,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'generic_crud_validation_stage' 和分组 '地质单元' 实例化。API对象数量: 5. 元数据: {'name': '地质单元', 'description': None, 'id': 18705} -2025-06-16 18:36:34,444 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'generic_crud_validation_stage' 是否适用于API分组 '地质单元'... -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Checking applicability of 'Generic CRUD Validation Stage' for API group '地质单元'. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Using default field/path configurations for group '地质单元'. Customize by overriding _determine_resource_config or cfg_* attributes. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['add', 'create', 'new', '添加', '新建', '创建']', target_method='POST', path_id_required=False, path_id_forbidden=True -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'POST'? True (Endpoint method: POST) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=True (required=False, forbidden=True) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: True, PathCond: True). Continuing search. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'POST'? False (Endpoint method: PUT) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=True (required=False, forbidden=True) -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: False, Method: False, PathCond: True). Continuing search. -2025-06-16 18:36:34,444 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'POST'? False (Endpoint method: DELETE) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=True (required=False, forbidden=True) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据删除' (Action: False, Method: False, PathCond: True). Continuing search. -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据添加': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135748, 'method': 'POST', 'title': '地质单元数据添加', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736959, '__v': 0}, 'title': '地质单元数据添加', 'desc': '', '_id': 135748, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '交换模型版本号'}, 'data': {'type': 'array', 'items': {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, 'title': '交换模型数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? True -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Method match with 'POST'? True (Endpoint method: POST) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据添加': Checking req_params for path ID: [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_condition_met=True (required=False, forbidden=True) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['add', 'create', 'new', '添加', '新建', '创建']': Key='地质单元数据添加', MatchedText='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']', target_method='None', path_id_required=False, path_id_forbidden=True -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']'? True -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'None'? True (Endpoint method: POST) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=True (required=False, forbidden=True) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']': Key='地质单元列表查询', MatchedText='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']', target_method='GET', path_id_required=True, path_id_forbidden=False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'GET'? False (Endpoint method: POST) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'GET'? False (Endpoint method: PUT) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'GET'? False (Endpoint method: DELETE) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据删除' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据添加': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135748, 'method': 'POST', 'title': '地质单元数据添加', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736959, '__v': 0}, 'title': '地质单元数据添加', 'desc': '', '_id': 135748, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '交换模型版本号'}, 'data': {'type': 'array', 'items': {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, 'title': '交换模型数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Method match with 'GET'? False (Endpoint method: POST) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据添加': Checking req_params for path ID: [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据添加' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元查询详情', Method='GET', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元查询详情': {'method': 'GET', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135752, 'method': 'GET', 'title': '地质单元查询详情', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736911, 'up_time': 1745737021, '__v': 0}, 'title': '地质单元查询详情', 'desc': '', '_id': 135752, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? True -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Method match with 'GET'? True (Endpoint method: GET) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元查询详情': Checking req_params for path ID: [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Found ID path parameter in YAPI req_params: 'id' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_contains_id_param=True (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_condition_met=True (required=True, forbidden=False) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']': Key='地质单元查询详情', MatchedText='地质单元查询详情', Method='GET', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['update', 'edit', 'put', '修改', '更新']', target_method='PUT', path_id_required=True, path_id_forbidden=False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['update', 'edit', 'put', '修改', '更新']'? False -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'PUT'? False (Endpoint method: POST) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['update', 'edit', 'put', '修改', '更新']'? True -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'PUT'? True (Endpoint method: PUT) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: True, Method: True, PathCond: False). Continuing search. -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,445 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['update', 'edit', 'put', '修改', '更新']'? False -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'PUT'? False (Endpoint method: DELETE) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据删除' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据添加': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135748, 'method': 'POST', 'title': '地质单元数据添加', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736959, '__v': 0}, 'title': '地质单元数据添加', 'desc': '', '_id': 135748, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '交换模型版本号'}, 'data': {'type': 'array', 'items': {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, 'title': '交换模型数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Action match with '['update', 'edit', 'put', '修改', '更新']'? False -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Method match with 'PUT'? False (Endpoint method: POST) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据添加': Checking req_params for path ID: [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_condition_met=False (required=True, forbidden=False) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据添加' (Action: False, Method: False, PathCond: False). Continuing search. -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元查询详情', Method='GET', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', Type='YAPIEndpoint' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元查询详情': {'method': 'GET', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135752, 'method': 'GET', 'title': '地质单元查询详情', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736911, 'up_time': 1745737021, '__v': 0}, 'title': '地质单元查询详情', 'desc': '', '_id': 135752, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Action match with '['update', 'edit', 'put', '修改', '更新']'? False -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Method match with 'PUT'? False (Endpoint method: GET) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元查询详情': Checking req_params for path ID: [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}] -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Found ID path parameter in YAPI req_params: 'id' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_contains_id_param=True (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_condition_met=True (required=True, forbidden=False) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元查询详情' (Action: False, Method: False, PathCond: True). Continuing search. -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['update', 'edit', 'put', '修改', '更新']', method='PUT', path_id_required=True, path_id_forbidden=False -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['delete', 'remove', '删除']', target_method='DELETE', path_id_required=False, path_id_forbidden=False -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['delete', 'remove', '删除']'? False -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'DELETE'? False (Endpoint method: POST) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=True (required=False, forbidden=False) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: False, PathCond: True). Continuing search. -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['delete', 'remove', '删除']'? False -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'DELETE'? False (Endpoint method: PUT) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=True (required=False, forbidden=False) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: False, Method: False, PathCond: True). Continuing search. -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['delete', 'remove', '删除']'? True -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'DELETE'? True (Endpoint method: DELETE) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=True (required=False, forbidden=False) -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['delete', 'remove', '删除']': Key='地质单元数据删除', MatchedText='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'Generic CRUD Validation Stage' is APPLICABLE for group '地质单元'. Required CRUD operations found. Discovered keys: {'create': '地质单元数据添加', 'list': '地质单元列表查询', 'detail': '地质单元查询详情', 'update': None, 'delete': '地质单元数据删除'} -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'generic_crud_validation_stage' 适用于API分组 '地质单元'。开始执行... -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试阶段: ID='generic_crud_validation_stage', Name='Generic CRUD Validation Stage', API分组='地质单元' -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'generic_crud_validation_stage' 的 before_stage 钩子。初始上下文: {} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Using default field/path configurations for group '地质单元'. Customize by overriding _determine_resource_config or cfg_* attributes. -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Starting stage 'Generic CRUD Validation Stage' for API group '地质单元'. Discovered op keys: {'create': '地质单元数据添加', 'list': '地质单元列表查询', 'detail': '地质单元查询详情', 'update': None, 'delete': '地质单元数据删除'} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Initial stage context (with cfg): {'unique_resource_name': 'TestResource_1750070194_ff0a3f', 'updated_resource_name': 'TestResource_1750070194_ff0a3f_UPDATED', 'unique_feature_value': 'Feature_1750070194', 'updated_feature_value': 'Feature_1750070194_UPDATED', 'cfg_list_path_in_listresponse': 'data.list', 'cfg_name_field_in_listitem': 'wellCommonName', 'cfg_id_field_in_listitem': 'dsid', 'cfg_resource_object_path_in_detailresponse': 'data.list.0', 'cfg_name_field_in_detailresponse': 'wellCommonName', 'cfg_id_field_in_detailresponse': 'dsid', 'cfg_resource_object_path_in_updateresponse': 'data.list.0', 'cfg_feature_field_name_for_validation': 'dataRegion', 'dms_instance_code': 'your_dms_instance_code', 'api_version': '1.0.0'} -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 开始执行. -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 调用 before_step 钩子. 上下文: {'unique_resource_name': 'TestResource_1750070194_ff0a3f', 'updated_resource_name': 'TestResource_1750070194_ff0a3f_UPDATED', 'unique_feature_value': 'Feature_1750070194', 'updated_feature_value': 'Feature_1750070194_UPDATED', 'cfg_list_path_in_listresponse': 'data.list', 'cfg_name_field_in_listitem': 'wellCommonName', 'cfg_id_field_in_listitem': 'dsid', 'cfg_resource_object_path_in_detailresponse': 'data.list.0', 'cfg_name_field_in_detailresponse': 'wellCommonName', 'cfg_id_field_in_detailresponse': 'dsid', 'cfg_resource_object_path_in_updateresponse': 'data.list.0', 'cfg_feature_field_name_for_validation': 'dataRegion', 'dms_instance_code': 'your_dms_instance_code', 'api_version': '1.0.0'} -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing before_step for step 'Create New Resource' in stage 'generic_crud_validation_stage' -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 查找端点定义. Key='地质单元数据添加', Group='地质单元' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 正在从 global_api_spec 中查找操作,键: '地质单元数据添加', API组: '地质单元' -2025-06-16 18:36:34,446 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 找到匹配操作 '地质单元数据添加' -> Method: POST, Path: /api/dms/{dms_instance_code}/v1/cd_geo_unit -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 已解析端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'. 准备请求数据. -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 应用请求覆盖: {'path_params': {'dms_instance_code': '{{stage_context.dms_instance_code}}'}, 'headers': {'tenant-id': 'your-tenant-id', 'Authorization': 'Bearer your-test-token'}, 'body': {'version': '{{stage_context.api_version}}', 'data': [{'wellCommonName': '{{stage_context.unique_resource_name}}', 'dataRegion': '{{stage_context.unique_feature_value}}'}]}} -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'dms_instance_code' 来自模板 '{{stage_context.dms_instance_code}}' -2025-06-16 18:36:34,446 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 'your_dms_instance_code...' (路径: 'dms_instance_code') -2025-06-16 18:36:34,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'api_version' 来自模板 '{{stage_context.api_version}}' -2025-06-16 18:36:34,447 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 '1.0.0...' (路径: 'api_version') -2025-06-16 18:36:34,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'unique_resource_name' 来自模板 '{{stage_context.unique_resource_name}}' -2025-06-16 18:36:34,447 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 'TestResource_1750070194_ff0a3f...' (路径: 'unique_resource_name') -2025-06-16 18:36:34,447 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'unique_feature_value' 来自模板 '{{stage_context.unique_feature_value}}' -2025-06-16 18:36:34,447 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 'Feature_1750070194...' (路径: 'unique_feature_value') -2025-06-16 18:36:34,447 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 发送API请求: POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 收到响应. Status: 200. 验证中... -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 提取输出到上下文. Map: {'created_resource_id': 'data.0.dsid'} -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [Create New Resource] 尝试提取 'data.0.dsid' 到上下文变量 'created_resource_id' -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - WARNING - [Create New Resource] 未知的提取源类型 'data' in path 'data.0.dsid' -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 调用 after_step 钩子. -2025-06-16 18:36:34,462 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing after_step for step 'Create New Resource' in stage 'generic_crud_validation_stage' -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 执行完毕. 状态: 通过, 耗时: 0.02s -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 开始执行. -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 调用 before_step 钩子. 上下文: {'unique_resource_name': 'TestResource_1750070194_ff0a3f', 'updated_resource_name': 'TestResource_1750070194_ff0a3f_UPDATED', 'unique_feature_value': 'Feature_1750070194', 'updated_feature_value': 'Feature_1750070194_UPDATED', 'cfg_list_path_in_listresponse': 'data.list', 'cfg_name_field_in_listitem': 'wellCommonName', 'cfg_id_field_in_listitem': 'dsid', 'cfg_resource_object_path_in_detailresponse': 'data.list.0', 'cfg_name_field_in_detailresponse': 'wellCommonName', 'cfg_id_field_in_detailresponse': 'dsid', 'cfg_resource_object_path_in_updateresponse': 'data.list.0', 'cfg_feature_field_name_for_validation': 'dataRegion', 'dms_instance_code': 'your_dms_instance_code', 'api_version': '1.0.0'} -2025-06-16 18:36:34,462 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing before_step for step 'List and Find Created Resource' in stage 'generic_crud_validation_stage' -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 查找端点定义. Key='地质单元列表查询', Group='地质单元' -2025-06-16 18:36:34,462 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 正在从 global_api_spec 中查找操作,键: '地质单元列表查询', API组: '地质单元' -2025-06-16 18:36:34,462 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 找到匹配操作 '地质单元列表查询' -> Method: POST, Path: /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 已解析端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'. 准备请求数据. -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, minItems: 1 -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] -2025-06-16 18:36:34,462 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 应用请求覆盖: {'path_params': {'dms_instance_code': '{{stage_context.dms_instance_code}}', 'version': '{{stage_context.api_version}}'}, 'headers': {'tenant-id': 'your-tenant-id', 'Authorization': 'Bearer your-test-token'}, 'query_params': {'pageNo': 1, 'pageSize': 10}, 'body': {'isSearchCount': True, 'query': {'fields': ['dsid', 'wellCommonName', 'dataRegion'], 'filter': {'key': 'wellCommonName', 'symbol': '=', 'realValue': ['{{stage_context.unique_resource_name}}']}}}} -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'List and Find Created Resource'] 解析上下文路径: 'dms_instance_code' 来自模板 '{{stage_context.dms_instance_code}}' -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'List and Find Created Resource'] 从上下文解析到值 'your_dms_instance_code...' (路径: 'dms_instance_code') -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'List and Find Created Resource'] 解析上下文路径: 'api_version' 来自模板 '{{stage_context.api_version}}' -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'List and Find Created Resource'] 从上下文解析到值 '1.0.0...' (路径: 'api_version') -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'List and Find Created Resource'] 解析上下文路径: 'unique_resource_name' 来自模板 '{{stage_context.unique_resource_name}}' -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'List and Find Created Resource'] 从上下文解析到值 'TestResource_1750070194_ff0a3f...' (路径: 'unique_resource_name') -2025-06-16 18:36:34,463 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 发送API请求: POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0 -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 收到响应. Status: 200. 验证中... -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 执行断言 'find_resource_in_list_and_extract_id' -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 断言 'find_resource_in_list_and_extract_id' 失败: Resource not found: Name 'TestResource_1750070194_ff0a3f' (field: wellCommonName) not found in list at path 'data.list'. -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 提取输出到上下文. Map: {'found_id_from_list': 'data.list.0.dsid'} -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - DEBUG - [List and Find Created Resource] 尝试提取 'data.list.0.dsid' 到上下文变量 'found_id_from_list' -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - WARNING - [List and Find Created Resource] 未知的提取源类型 'data' in path 'data.list.0.dsid' -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 调用 after_step 钩子. -2025-06-16 18:36:34,476 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing after_step for step 'List and Find Created Resource' in stage 'generic_crud_validation_stage' -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 执行完毕. 状态: 失败, 耗时: 0.01s -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 状态为 失败 且 continue_on_failure=False. 中止测试阶段 'generic_crud_validation_stage'. -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'generic_crud_validation_stage' 的 after_stage 钩子. 当前阶段结果状态: 失败 -2025-06-16 18:36:34,476 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Finished stage 'Generic CRUD Validation Stage'. API Group: '地质单元'. Final Status: Status.FAILED. Final Context Keys: ['unique_resource_name', 'updated_resource_name', 'unique_feature_value', 'updated_feature_value', 'cfg_list_path_in_listresponse', 'cfg_name_field_in_listitem', 'cfg_id_field_in_listitem', 'cfg_resource_object_path_in_detailresponse', 'cfg_name_field_in_detailresponse', 'cfg_id_field_in_detailresponse', 'cfg_resource_object_path_in_updateresponse', 'cfg_feature_field_name_for_validation', 'dms_instance_code', 'api_version'] -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'generic_crud_validation_stage' (API分组: '地质单元') 执行完毕. 最终状态: 失败, 耗时: 0.03s -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - INFO - API Test Stage execution processed. Considered 2 (stage_definition x api_group) combinations. -2025-06-16 18:36:34,476 - __main__ - INFO - API测试阶段 (Stages) 执行完毕。 -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - INFO - -------------------- API Test Summary -------------------- -2025-06-16 18:36:34,476 - ddms_compliance_suite.test_orchestrator - INFO - Start Time: 2025-06-16T18:36:01.309510 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - End Time: 2025-06-16T18:36:34.476981 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Total Duration: 33.17 seconds -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - --- Endpoints --- -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Total Endpoints Defined: 6 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Endpoints Tested: 6 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 6 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Partial Success: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 0.00% -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - --- Test Cases --- -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Applicable: 108 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Executed: 108 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 79 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 29 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Skipped (within endpoints): 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 73.15% -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - --- Stages --- -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Defined: 1 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Executed: 1 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 1 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0 -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 0.00% -2025-06-16 18:36:34,477 - ddms_compliance_suite.test_orchestrator - INFO - -------------------------------------------------------- -2025-06-16 18:36:34,479 - __main__ - INFO - 测试结果已保存为JSON: test_reports/summary.json -2025-06-16 18:36:34,479 - __main__ - INFO - API调用详情将以 Markdown 格式保存到目录 'test_reports' (使用默认文件名 'api_call_details.md') -2025-06-16 18:36:34,484 - __main__ - INFO - API调用详情已保存为 Markdown: test_reports/api_call_details.md -2025-06-16 18:36:34,484 - __main__ - INFO - 部分测试失败或出错,请检查报告。 -DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 482\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_zi0ifg", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' +DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_uy507l", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-ERROR-4006' 执行失败。 +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4006' 执行完毕,状态: 失败 +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-BODY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,245 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,245 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,245 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,245 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,245 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,245 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,245 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldBodyCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,245 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 递归查找路径: [], 当前层级必填字段: [], 属性: ['isSearchCount', 'query'] +2025-06-20 10:38:53,246 - ddms_compliance_suite.utils.schema_utils - DEBUG - [Util] 在路径 root 未通过任何策略找到可移除的必填字段。 +2025-06-20 10:38:53,246 - testcase.TC-ERROR-4003-BODY - INFO - No removable (required) field path found in 'request body' schema. +2025-06-20 10:38:53,246 - testcase.TC-ERROR-4003-BODY - INFO - 在请求体 schema 中未找到可用于测试 "必填字段缺失" 的字段(通过基类方法)。 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-BODY' (Error Code -1 - Missing Required Request Body Field Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,246 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,271 - testcase.TC-ERROR-4003-BODY - INFO - 由于未识别到可移除的必填请求体字段,跳过此测试用例的验证。 +2025-06-20 10:38:53,271 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-BODY' 执行成功。 +2025-06-20 10:38:53,271 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-BODY' 执行完毕,状态: 通过 +2025-06-20 10:38:53,271 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-ERROR-4003-QUERY' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,271 - ddms_compliance_suite.test_orchestrator - DEBUG - Successfully converted/retrieved global_api_spec (type: ) to dict using .spec attribute. +2025-06-20 10:38:53,271 - ddms_compliance_suite.test_orchestrator - DEBUG - global_spec_dict keys for $ref resolution: ['yapi_categories'] +2025-06-20 10:38:53,271 - ddms_compliance_suite.test_orchestrator - DEBUG - 开始为 endpoint_spec_dict (来自 ) 中的 schemas 进行 $ref 解析... +2025-06-20 10:38:53,271 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 requestBody content 'application/json' 的 schema... +2025-06-20 10:38:53,271 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/RdbQueryPageInput +2025-06-20 10:38:53,271 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/QueryVO +2025-06-20 10:38:53,271 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,272 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,272 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,272 - ddms_compliance_suite.utils.schema_utils - DEBUG - 因 discard_refs=True,丢弃 '$ref': #/components/schemas/FilterVO +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[0] ('dms_instance_code') 的 schema... +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[1] ('version') 的 schema... +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[2] ('id') 的 schema... +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[3] ('tenant-id') 的 schema... +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 parameters[4] ('Authorization') 的 schema... +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - 正在解析 responses '200' content 'application/json' 的 schema... +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - INFO - Endpoint spec (来自 ) 中的 schemas $ref 解析完成。 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备实例化测试用例类: MissingRequiredFieldQueryCase 使用 endpoint_spec (keys: ['method', 'path', 'title', 'summary', 'description', 'operationId', 'tags', 'parameters', 'requestBody', 'responses', '_source_format', '_yapi_id', '_yapi_raw_data', '_global_api_spec_for_resolution']) 和 global_api_spec (keys: ['yapi_categories']) +2025-06-20 10:38:53,272 - testcase.TC-ERROR-4003-QUERY - INFO - No required 'query' parameter found in endpoint_spec. +2025-06-20 10:38:53,272 - testcase.TC-ERROR-4003-QUERY - INFO - 测试用例 TC-ERROR-4003-QUERY (Error Code -1 - Missing Required Query Parameter Validation) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。Target param to remove: None +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试用例 'TC-ERROR-4003-QUERY' (Error Code -1 - Missing Required Query Parameter Validation) for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752': application/json +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 使用 schema 中的 'default' 值 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.isSearchCount): True +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.fields[0]): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.key): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.logic): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.filter.symbol): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 array 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter). Items schema: {'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 string 类型数据 ('') for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - [get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752] 生成 object 类型数据 for (context: get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752_body.query.sort). Properties: [] +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'get__api_dms_dms_instance_code_v1_cd_geo_unit_version_id_135752' (type: ) +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - Path parameters to be substituted: {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0', 'id': 'example_id'} +2025-06-20 10:38:53,272 - ddms_compliance_suite.test_orchestrator - DEBUG - URL after path parameter substitution (before TC modify_request_url hook): http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +2025-06-20 10:38:53,296 - testcase.TC-ERROR-4003-QUERY - INFO - 由于未识别到可移除的必填查询参数,跳过此测试用例。 +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-ERROR-4003-QUERY' 执行成功。 +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-ERROR-4003-QUERY' 执行完毕,状态: 通过 +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 测试完成,最终状态: 失败 +2025-06-20 10:38:53,296 - __main__ - INFO - 开始执行API测试阶段 (Stages),目录: ./custom_stages +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行API测试阶段 (Stages)... +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - INFO - 发现了 1 个已定义的测试阶段: ['generic_crud_validation_stage'] +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - INFO - 将针对 2 个API分组评估测试阶段: ['公共分类', '地质单元'] +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - INFO - 处理测试阶段定义: ID='generic_crud_validation_stage', Name='Generic CRUD Validation Stage' +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'generic_crud_validation_stage' 的上下文,针对API分组: '公共分类' +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - DEBUG - For YAPI group '公共分类' (resolved ID: 17672), selected 1 endpoint objects. +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'generic_crud_validation_stage' 和分组 '公共分类' 实例化。API对象数量: 1. 元数据: {'name': '公共分类', 'description': '公共分类', 'id': 17672} +2025-06-20 10:38:53,296 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'generic_crud_validation_stage' 是否适用于API分组 '公共分类'... +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Checking applicability of 'Generic CRUD Validation Stage' for API group '公共分类'. +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Using default field/path configurations for group '公共分类'. Customize by overriding _determine_resource_config or cfg_* attributes. +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['add', 'create', 'new', '添加', '新建', '创建']', target_method='POST', path_id_required=False, path_id_forbidden=True +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'POST'? True (Endpoint method: POST) +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,296 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=True (required=False, forbidden=True) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: True, PathCond: True). Continuing search. +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['add', 'create', 'new', '添加', '新建', '创建']', method='POST', path_id_required=False, path_id_forbidden=True +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']', target_method='None', path_id_required=False, path_id_forbidden=True +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']'? False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'None'? True (Endpoint method: POST) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=True (required=False, forbidden=True) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: True, PathCond: True). Continuing search. +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']', method='None', path_id_required=False, path_id_forbidden=True +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']', target_method='GET', path_id_required=True, path_id_forbidden=False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'GET'? False (Endpoint method: POST) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']', method='GET', path_id_required=True, path_id_forbidden=False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['update', 'edit', 'put', '修改', '更新']', target_method='PUT', path_id_required=True, path_id_forbidden=False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['update', 'edit', 'put', '修改', '更新']'? False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'PUT'? False (Endpoint method: POST) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['update', 'edit', 'put', '修改', '更新']', method='PUT', path_id_required=True, path_id_forbidden=False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['delete', 'remove', '删除']', target_method='DELETE', path_id_required=False, path_id_forbidden=False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='数据推送接口', Method='POST', Path='/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '数据推送接口': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135716, 'method': 'POST', 'title': '数据推送接口', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}', 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 17672, 'markdown': '', 'uid': 808, 'add_time': 1744780583, 'up_time': 1744780741, '__v': 0}, 'title': '数据推送接口', 'desc': '', '_id': 135716, 'project_id': 1193, 'catid': 17672, 'req_params': [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '67ff3dc5335acf11b4926aba', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '67ff3dc5335acfae3f926ab9', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '67ff3dc5335acfad4f926ab8', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 808, 'category_name': '公共分类', 'category_id': 17672, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Action match with '['delete', 'remove', '删除']'? False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Method match with 'DELETE'? False (Endpoint method: POST) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '数据推送接口': Checking req_params for path ID: [{'_id': '67ff3dc5335acf6754926ab7', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '67ff3dc5335acf0829926ab6', 'name': 'schema', 'desc': ''}, {'_id': '67ff3dc5335acf485f926ab5', 'name': 'version', 'desc': ''}] +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '数据推送接口': Calculated path_condition_met=True (required=False, forbidden=False) +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '数据推送接口' (Action: False, Method: False, PathCond: True). Continuing search. +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['delete', 'remove', '删除']', method='DELETE', path_id_required=False, path_id_forbidden=False +2025-06-20 10:38:53,297 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - 'Generic CRUD Validation Stage' is NOT APPLICABLE for group '公共分类'. Missing required operations: ['create', 'detail', 'delete']. Discovered keys: {'create': None, 'list': None, 'detail': None, 'update': None, 'delete': None} +2025-06-20 10:38:53,297 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'generic_crud_validation_stage' 不适用于API分组 '公共分类'。跳过此分组。 +2025-06-20 10:38:53,298 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备阶段 'generic_crud_validation_stage' 的上下文,针对API分组: '地质单元' +2025-06-20 10:38:53,298 - ddms_compliance_suite.test_orchestrator - DEBUG - For YAPI group '地质单元' (resolved ID: 18705), selected 5 endpoint objects. +2025-06-20 10:38:53,298 - ddms_compliance_suite.test_orchestrator - DEBUG - 为阶段 'generic_crud_validation_stage' 和分组 '地质单元' 实例化。API对象数量: 5. 元数据: {'name': '地质单元', 'description': None, 'id': 18705} +2025-06-20 10:38:53,298 - ddms_compliance_suite.test_orchestrator - DEBUG - 检查阶段 'generic_crud_validation_stage' 是否适用于API分组 '地质单元'... +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Checking applicability of 'Generic CRUD Validation Stage' for API group '地质单元'. +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Using default field/path configurations for group '地质单元'. Customize by overriding _determine_resource_config or cfg_* attributes. +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['add', 'create', 'new', '添加', '新建', '创建']', target_method='POST', path_id_required=False, path_id_forbidden=True +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'POST'? True (Endpoint method: POST) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=True (required=False, forbidden=True) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: True, PathCond: True). Continuing search. +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'POST'? False (Endpoint method: PUT) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=True (required=False, forbidden=True) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: False, Method: False, PathCond: True). Continuing search. +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? False +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'POST'? False (Endpoint method: DELETE) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=True (required=False, forbidden=True) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据删除' (Action: False, Method: False, PathCond: True). Continuing search. +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据添加': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135748, 'method': 'POST', 'title': '地质单元数据添加', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736959, '__v': 0}, 'title': '地质单元数据添加', 'desc': '', '_id': 135748, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '交换模型版本号'}, 'data': {'type': 'array', 'items': {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, 'title': '交换模型数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Action match with '['add', 'create', 'new', '添加', '新建', '创建']'? True +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Method match with 'POST'? True (Endpoint method: POST) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据添加': Checking req_params for path ID: [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_condition_met=True (required=False, forbidden=True) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['add', 'create', 'new', '添加', '新建', '创建']': Key='地质单元数据添加', MatchedText='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']', target_method='None', path_id_required=False, path_id_forbidden=True +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']'? True +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'None'? True (Endpoint method: POST) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=True (required=False, forbidden=True) +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['list', 'query', 'search', 'getall', 'getlist', '列表查询', '查询列表', '获取列表', '分页查询']': Key='地质单元列表查询', MatchedText='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']', target_method='GET', path_id_required=True, path_id_forbidden=False +2025-06-20 10:38:53,298 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'GET'? False (Endpoint method: POST) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'GET'? False (Endpoint method: PUT) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'GET'? False (Endpoint method: DELETE) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据删除' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据添加': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135748, 'method': 'POST', 'title': '地质单元数据添加', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736959, '__v': 0}, 'title': '地质单元数据添加', 'desc': '', '_id': 135748, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '交换模型版本号'}, 'data': {'type': 'array', 'items': {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, 'title': '交换模型数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? False +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Method match with 'GET'? False (Endpoint method: POST) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据添加': Checking req_params for path ID: [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据添加' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元查询详情', Method='GET', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', Type='YAPIEndpoint' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元查询详情': {'method': 'GET', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135752, 'method': 'GET', 'title': '地质单元查询详情', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736911, 'up_time': 1745737021, '__v': 0}, 'title': '地质单元查询详情', 'desc': '', '_id': 135752, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Action match with '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']'? True +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Method match with 'GET'? True (Endpoint method: GET) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元查询详情': Checking req_params for path ID: [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}] +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Found ID path parameter in YAPI req_params: 'id' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_contains_id_param=True (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_condition_met=True (required=True, forbidden=False) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['detail', 'getbyid', 'getone', '查询详情', '获取详情', '根据ID获取']': Key='地质单元查询详情', MatchedText='地质单元查询详情', Method='GET', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['update', 'edit', 'put', '修改', '更新']', target_method='PUT', path_id_required=True, path_id_forbidden=False +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['update', 'edit', 'put', '修改', '更新']'? False +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'PUT'? False (Endpoint method: POST) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,299 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['update', 'edit', 'put', '修改', '更新']'? True +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'PUT'? True (Endpoint method: PUT) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: True, Method: True, PathCond: False). Continuing search. +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['update', 'edit', 'put', '修改', '更新']'? False +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'PUT'? False (Endpoint method: DELETE) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据删除' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据添加', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据添加': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135748, 'method': 'POST', 'title': '地质单元数据添加', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736959, '__v': 0}, 'title': '地质单元数据添加', 'desc': '', '_id': 135748, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd4ff335acfc5c7926ceb', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd4ff335acff16f926cea', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd4ff335acf1a5c926ce9', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"交换模型版本号"},"data":{"type":"array","items":{"type":"object","properties":{"bsflag":{"type":"number","title":"必填字段删除标记"},"wellCommonName":{"type":"string"},"wellId":{"type":"string"},"dataRegion":{"type":"string"}},"required":["bsflag","wellCommonName","wellId","dataRegion"]},"title":"交换模型数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '交换模型版本号'}, 'data': {'type': 'array', 'items': {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, 'title': '交换模型数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Action match with '['update', 'edit', 'put', '修改', '更新']'? False +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Method match with 'PUT'? False (Endpoint method: POST) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据添加': Checking req_params for path ID: [{'_id': '680dd4ff335acf81b3926ce8', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据添加': Calculated path_condition_met=False (required=True, forbidden=False) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据添加' (Action: False, Method: False, PathCond: False). Continuing search. +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元查询详情', Method='GET', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', Type='YAPIEndpoint' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元查询详情': {'method': 'GET', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'params': []}, 'edit_uid': 0, 'status': 'done', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135752, 'method': 'GET', 'title': '地质单元查询详情', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}', 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736911, 'up_time': 1745737021, '__v': 0}, 'title': '地质单元查询详情', 'desc': '', '_id': 135752, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}], 'req_query': [], 'req_headers': [{'required': '1', '_id': '680dd53d335acf68e4926d08', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd53d335acf9fb4926d07', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd53d335acf7a8d926d06', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'done', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Action match with '['update', 'edit', 'put', '修改', '更新']'? False +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Method match with 'PUT'? False (Endpoint method: GET) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元查询详情': Checking req_params for path ID: [{'_id': '680dd53d335acf42db926d05', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd53d335acf2105926d04', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}, {'_id': '680dd53d335acf7970926d03', 'name': 'id', 'desc': ''}] +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Found ID path parameter in YAPI req_params: 'id' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_contains_id_param=True (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元查询详情': Calculated path_condition_met=True (required=True, forbidden=False) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元查询详情' (Action: False, Method: False, PathCond: True). Continuing search. +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - WARNING - FAILURE: No operation found after checking all endpoints for: actions='['update', 'edit', 'put', '修改', '更新']', method='PUT', path_id_required=True, path_id_forbidden=False +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Attempting to find operation: target_actions='['delete', 'remove', '删除']', target_method='DELETE', path_id_required=False, path_id_forbidden=False +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元列表查询', Method='POST', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', Type='YAPIEndpoint' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元列表查询': {'method': 'POST', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135751, 'method': 'POST', 'title': '地质单元列表查询', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}', 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736910, 'up_time': 1745737050, '__v': 0}, 'title': '地质单元列表查询', 'desc': '', '_id': 135751, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}], 'req_query': [{'required': '0', '_id': '680dd55a335acfabfa926d1a', 'name': 'pageNo', 'desc': '页码(从1开始)'}, {'required': '0', '_id': '680dd55a335acf831b926d19', 'name': 'pageSize', 'desc': '分页大小(最大值200)'}], 'req_headers': [{'required': '1', '_id': '680dd55a335acfb51b926d1d', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd55a335acf6226926d1c', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd55a335acf39a0926d1b', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"properties":{"isSearchCount":{"default":true,"description":"是否统计总条数","type":"boolean"},"query":{"description":"查询条件","properties":{"dataRegions":{"description":"数据域,如:JD、DG、TL","items":{"description":"数据域,如:JD、DG、TL","type":"string"},"type":"array"},"fields":{"description":"查询的字段","items":{"description":"查询的字段","type":"string"},"type":"array"},"filter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"groupFields":{"description":"分组字段group by","items":{"description":"分组字段group by","type":"string"},"type":"array"},"groupFilter":{"description":"筛选器","properties":{"key":{"description":"条件项","type":"string"},"logic":{"description":"逻辑操作符,可选值为:AND、OR","type":"string"},"realValue":{"description":"条件值","items":{"description":"条件值","type":"object","properties":{}},"type":"array"},"singleValue":{"type":"object","writeOnly":true,"properties":{}},"subFilter":{"description":"子条件","items":{"$ref":"#/components/schemas/FilterVO","type":"string"},"type":"array"},"symbol":{"description":"运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL","type":"string"}},"type":"object","$$ref":"#/components/schemas/FilterVO"},"sort":{"additionalProperties":{"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"string"},"description":"排序字段,key=字段名,value=排序方式(ASC、DESC)","type":"object","properties":{}}},"type":"object","$$ref":"#/components/schemas/QueryVO"}},"type":"object","$$ref":"#/components/schemas/RdbQueryPageInput"}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"object","properties":{"total":{"type":"number"},"list":{"type":"array","items":{"type":"object","properties":{"dsid":{"type":"string"},"dataRegion":{"type":"string"},"gasReleaseMon":{"type":"null"},"gasReleaseYear":{"type":"null"},"releaseGasCum":{"type":"null"}}}}}}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'properties': {'isSearchCount': {'default': True, 'description': '是否统计总条数', 'type': 'boolean'}, 'query': {'description': '查询条件', 'properties': {'dataRegions': {'description': '数据域,如:JD、DG、TL', 'items': {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, 'type': 'array'}, 'fields': {'description': '查询的字段', 'items': {'description': '查询的字段', 'type': 'string'}, 'type': 'array'}, 'filter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'groupFields': {'description': '分组字段group by', 'items': {'description': '分组字段group by', 'type': 'string'}, 'type': 'array'}, 'groupFilter': {'description': '筛选器', 'properties': {'key': {'description': '条件项', 'type': 'string'}, 'logic': {'description': '逻辑操作符,可选值为:AND、OR', 'type': 'string'}, 'realValue': {'description': '条件值', 'items': {'description': '条件值', 'type': 'object', 'properties': {}}, 'type': 'array'}, 'singleValue': {'type': 'object', 'writeOnly': True, 'properties': {}}, 'subFilter': {'description': '子条件', 'items': {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, 'type': 'array'}, 'symbol': {'description': '运算符,可选值为:>、>=、<、<=、>、<、=、<>、!=、IN、NOTIN、LIKE、IS;当运算符为 IS 时,条件值只能为NULL或NOT NULL', 'type': 'string'}}, 'type': 'object', '$$ref': '#/components/schemas/FilterVO'}, 'sort': {'additionalProperties': {'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'string'}, 'description': '排序字段,key=字段名,value=排序方式(ASC、DESC)', 'type': 'object', 'properties': {}}}, 'type': 'object', '$$ref': '#/components/schemas/QueryVO'}}, 'type': 'object', '$$ref': '#/components/schemas/RdbQueryPageInput'}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'object', 'properties': {'total': {'type': 'number'}, 'list': {'type': 'array', 'items': {'type': 'object', 'properties': {'dsid': {'type': 'string'}, 'dataRegion': {'type': 'string'}, 'gasReleaseMon': {'type': 'null'}, 'gasReleaseYear': {'type': 'null'}, 'releaseGasCum': {'type': 'null'}}}}}}}}} +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Action match with '['delete', 'remove', '删除']'? False +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Method match with 'DELETE'? False (Endpoint method: POST) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元列表查询': Checking req_params for path ID: [{'_id': '680dd55a335acff12e926d18', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}, {'_id': '680dd55a335acfc43d926d17', 'name': 'version', 'example': '1.0.0', 'desc': '交换模型版本'}] +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元列表查询': Calculated path_condition_met=True (required=False, forbidden=False) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元列表查询' (Action: False, Method: False, PathCond: True). Continuing search. +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据修改', Method='PUT', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据修改': {'method': 'PUT', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135749, 'method': 'PUT', 'title': '地质单元数据修改', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736907, 'up_time': 1745736976, '__v': 0}, 'title': '地质单元数据修改', 'desc': '', '_id': 135749, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd510335acf1ed1926ced', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd510335acf7bb3926cf0', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd510335acf6953926cef', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd510335acfd86b926cee', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"id":{"type":"string","required":true},"version":{"type":"string"}},"required":["id","version"]}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'id': {'type': 'string', 'required': True}, 'version': {'type': 'string'}}, 'required': ['id', 'version']}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Action match with '['delete', 'remove', '删除']'? False +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Method match with 'DELETE'? False (Endpoint method: PUT) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据修改': Checking req_params for path ID: [{'_id': '680dd510335acf19c3926cec', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据修改': Calculated path_condition_met=True (required=False, forbidden=False) +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Criteria NOT met for '地质单元数据修改' (Action: False, Method: False, PathCond: True). Continuing search. +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Checking endpoint: Title='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit', Type='YAPIEndpoint' +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Raw YAPIEndpoint object attributes for '地质单元数据删除': {'method': 'DELETE', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', '_raw_data': {'query_path': {'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'params': []}, 'edit_uid': 0, 'status': 'undone', 'type': 'var', 'req_body_is_json_schema': True, 'res_body_is_json_schema': True, 'api_opened': False, 'index': 0, 'tag': [], '_id': 135750, 'method': 'DELETE', 'title': '地质单元数据删除', 'desc': '', 'path': '/api/dms/{dms_instance_code}/v1/cd_geo_unit', 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_body_form': [], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_body_type': 'json', 'res_body_type': 'json', 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'project_id': 1193, 'catid': 18705, 'markdown': '', 'uid': 1103, 'add_time': 1745736908, 'up_time': 1745736987, '__v': 0}, 'title': '地质单元数据删除', 'desc': '', '_id': 135750, 'project_id': 1193, 'catid': 18705, 'req_params': [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}], 'req_query': [{'required': '1', '_id': '680dd51b335acf7441926cf2', 'name': 'id', 'example': 'dsid', 'desc': '主键id的key'}], 'req_headers': [{'required': '1', '_id': '680dd51b335acfb316926cf5', 'name': 'Content-Type', 'value': 'application/json'}, {'required': '1', '_id': '680dd51b335acf45f4926cf4', 'name': 'tenant-id', 'desc': 'tenant-id (Only:undefined)'}, {'required': '1', '_id': '680dd51b335acf0cfa926cf3', 'name': 'Authorization', 'desc': 'Authorization (Only:undefined)'}], 'req_body_form': [], 'req_body_type': 'json', 'req_body_is_json_schema': True, 'req_body_other': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"version":{"type":"string","title":"版本号"},"data":{"type":"array","items":{"type":"string"},"title":"主键id数据集"}}}', 'res_body_type': 'json', 'res_body_is_json_schema': True, 'res_body': '{"$schema":"http://json-schema.org/draft-04/schema#","type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"data":{"type":"boolean"}}}', 'status': 'undone', 'api_opened': False, 'uid': 1103, 'category_name': '地质单元', 'category_id': 18705, '_parsed_req_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'version': {'type': 'string', 'title': '版本号'}, 'data': {'type': 'array', 'items': {'type': 'string'}, 'title': '主键id数据集'}}}, '_parsed_res_body_schema': {'$schema': 'http://json-schema.org/draft-04/schema#', 'type': 'object', 'properties': {'code': {'type': 'number'}, 'message': {'type': 'string'}, 'data': {'type': 'boolean'}}}} +2025-06-20 10:38:53,300 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Action match with '['delete', 'remove', '删除']'? True +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Method match with 'DELETE'? True (Endpoint method: DELETE) +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For YAPI Endpoint '地质单元数据删除': Checking req_params for path ID: [{'_id': '680dd51b335acfe93a926cf1', 'name': 'dms_instance_code', 'desc': '注册实例code\n井筒中心 well_kd_wellbore_ideas01'}] +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_contains_id_param=False (cfg_path_param_name_for_id='id') +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - For '地质单元数据删除': Calculated path_condition_met=True (required=False, forbidden=False) +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - SUCCESS: Op match for actions '['delete', 'remove', '删除']': Key='地质单元数据删除', MatchedText='地质单元数据删除', Method='DELETE', Path='/api/dms/{dms_instance_code}/v1/cd_geo_unit' +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'Generic CRUD Validation Stage' is APPLICABLE for group '地质单元'. Required CRUD operations found. Discovered keys: {'create': '地质单元数据添加', 'list': '地质单元列表查询', 'detail': '地质单元查询详情', 'update': None, 'delete': '地质单元数据删除'} +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'generic_crud_validation_stage' 适用于API分组 '地质单元'。开始执行... +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - INFO - 开始执行测试阶段: ID='generic_crud_validation_stage', Name='Generic CRUD Validation Stage', API分组='地质单元' +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'generic_crud_validation_stage' 的 before_stage 钩子。初始上下文: {} +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Using default field/path configurations for group '地质单元'. Customize by overriding _determine_resource_config or cfg_* attributes. +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Starting stage 'Generic CRUD Validation Stage' for API group '地质单元'. Discovered op keys: {'create': '地质单元数据添加', 'list': '地质单元列表查询', 'detail': '地质单元查询详情', 'update': None, 'delete': '地质单元数据删除'} +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Initial stage context (with cfg): {'unique_resource_name': 'TestResource_1750387133_207b0e', 'updated_resource_name': 'TestResource_1750387133_207b0e_UPDATED', 'unique_feature_value': 'Feature_1750387133', 'updated_feature_value': 'Feature_1750387133_UPDATED', 'cfg_list_path_in_listresponse': 'data.list', 'cfg_name_field_in_listitem': 'wellCommonName', 'cfg_id_field_in_listitem': 'dsid', 'cfg_resource_object_path_in_detailresponse': 'data.list.0', 'cfg_name_field_in_detailresponse': 'wellCommonName', 'cfg_id_field_in_detailresponse': 'dsid', 'cfg_resource_object_path_in_updateresponse': 'data.list.0', 'cfg_feature_field_name_for_validation': 'dataRegion', 'dms_instance_code': 'your_dms_instance_code', 'api_version': '1.0.0'} +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 开始执行. +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 调用 before_step 钩子. 上下文: {'unique_resource_name': 'TestResource_1750387133_207b0e', 'updated_resource_name': 'TestResource_1750387133_207b0e_UPDATED', 'unique_feature_value': 'Feature_1750387133', 'updated_feature_value': 'Feature_1750387133_UPDATED', 'cfg_list_path_in_listresponse': 'data.list', 'cfg_name_field_in_listitem': 'wellCommonName', 'cfg_id_field_in_listitem': 'dsid', 'cfg_resource_object_path_in_detailresponse': 'data.list.0', 'cfg_name_field_in_detailresponse': 'wellCommonName', 'cfg_id_field_in_detailresponse': 'dsid', 'cfg_resource_object_path_in_updateresponse': 'data.list.0', 'cfg_feature_field_name_for_validation': 'dataRegion', 'dms_instance_code': 'your_dms_instance_code', 'api_version': '1.0.0'} +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing before_step for step 'Create New Resource' in stage 'generic_crud_validation_stage' +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 查找端点定义. Key='地质单元数据添加', Group='地质单元' +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 正在从 global_api_spec 中查找操作,键: '地质单元数据添加', API组: '地质单元' +2025-06-20 10:38:53,301 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 找到匹配操作 '地质单元数据添加' -> Method: POST, Path: /api/dms/{dms_instance_code}/v1/cd_geo_unit +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 已解析端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'. 准备请求数据. +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'dms_instance_code': 'example_dms_instance_code'} +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748': application/json +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body). Properties: ['version', 'data'] +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.version): example_string +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data). Items schema: {'type': 'object', 'properties': {'bsflag': {'type': 'number', 'title': '必填字段删除标记'}, 'wellCommonName': {'type': 'string'}, 'wellId': {'type': 'string'}, 'dataRegion': {'type': 'string'}}, 'required': ['bsflag', 'wellCommonName', 'wellId', 'dataRegion']}, minItems: 1 +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0]). Properties: ['bsflag', 'wellCommonName', 'wellId', 'dataRegion'] +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 number/integer 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].bsflag): 0.0 +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellCommonName): example_string +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].wellId): example_string +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_135748] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_135748_body.data[0].dataRegion): example_string +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_135748' (type: ) +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 应用请求覆盖: {'path_params': {'dms_instance_code': '{{stage_context.dms_instance_code}}'}, 'headers': {'tenant-id': 'your-tenant-id', 'Authorization': 'Bearer your-test-token'}, 'body': {'version': '{{stage_context.api_version}}', 'data': [{'wellCommonName': '{{stage_context.unique_resource_name}}', 'dataRegion': '{{stage_context.unique_feature_value}}'}]}} +2025-06-20 10:38:53,301 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'dms_instance_code' 来自模板 '{{stage_context.dms_instance_code}}' +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 'your_dms_instance_code...' (路径: 'dms_instance_code') +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'api_version' 来自模板 '{{stage_context.api_version}}' +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 '1.0.0...' (路径: 'api_version') +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'unique_resource_name' 来自模板 '{{stage_context.unique_resource_name}}' +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 'TestResource_1750387133_207b0e...' (路径: 'unique_resource_name') +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'Create New Resource'] 解析上下文路径: 'unique_feature_value' 来自模板 '{{stage_context.unique_feature_value}}' +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'Create New Resource'] 从上下文解析到值 'Feature_1750387133...' (路径: 'unique_feature_value') +2025-06-20 10:38:53,302 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 发送API请求: POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 收到响应. Status: 200. 验证中... +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 提取输出到上下文. Map: {'created_resource_id': 'data.0.dsid'} +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [Create New Resource] 尝试提取 'data.0.dsid' 到上下文变量 'created_resource_id' +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - WARNING - [Create New Resource] 未知的提取源类型 'data' in path 'data.0.dsid' +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 调用 after_step 钩子. +2025-06-20 10:38:53,327 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing after_step for step 'Create New Resource' in stage 'generic_crud_validation_stage' +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'Create New Resource': 执行完毕. 状态: 通过, 耗时: 0.03s +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 开始执行. +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 调用 before_step 钩子. 上下文: {'unique_resource_name': 'TestResource_1750387133_207b0e', 'updated_resource_name': 'TestResource_1750387133_207b0e_UPDATED', 'unique_feature_value': 'Feature_1750387133', 'updated_feature_value': 'Feature_1750387133_UPDATED', 'cfg_list_path_in_listresponse': 'data.list', 'cfg_name_field_in_listitem': 'wellCommonName', 'cfg_id_field_in_listitem': 'dsid', 'cfg_resource_object_path_in_detailresponse': 'data.list.0', 'cfg_name_field_in_detailresponse': 'wellCommonName', 'cfg_id_field_in_detailresponse': 'dsid', 'cfg_resource_object_path_in_updateresponse': 'data.list.0', 'cfg_feature_field_name_for_validation': 'dataRegion', 'dms_instance_code': 'your_dms_instance_code', 'api_version': '1.0.0'} +2025-06-20 10:38:53,327 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing before_step for step 'List and Find Created Resource' in stage 'generic_crud_validation_stage' +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 查找端点定义. Key='地质单元列表查询', Group='地质单元' +2025-06-20 10:38:53,327 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 正在从 global_api_spec 中查找操作,键: '地质单元列表查询', API组: '地质单元' +2025-06-20 10:38:53,327 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - 'generic_crud_validation_stage': 找到匹配操作 '地质单元列表查询' -> Method: POST, Path: /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 已解析端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'. 准备请求数据. +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial path param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'dms_instance_code': 'example_dms_instance_code', 'version': '1.0.0'} +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial query param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'pageNo': 'query_val_pageNo', 'pageSize': 'query_val_pageSize'} +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial custom header param for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': {'tenant-id': 'header_val_tenant-id'} +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Content-Type for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial Accept header for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751': application/json +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body). Properties: ['isSearchCount', 'query'] +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 使用 schema 中的 'default' 值 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.isSearchCount): True +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query). Properties: ['dataRegions', 'fields', 'filter', 'groupFields', 'groupFilter', 'sort'] +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions). Items schema: {'description': '数据域,如:JD、DG、TL', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.dataRegions[0]): example_string +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields). Items schema: {'description': '查询的字段', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.fields[0]): example_string +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.key): example_string +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.logic): example_string +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.realValue[0]). Properties: [] +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.singleValue). Properties: [] +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter). Items schema: {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,327 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.subFilter[0]): example_string +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.filter.symbol): example_string +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields). Items schema: {'description': '分组字段group by', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFields[0]): example_string +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter). Properties: ['key', 'logic', 'realValue', 'singleValue', 'subFilter', 'symbol'] +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.key): example_string +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.logic): example_string +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue). Items schema: {'description': '条件值', 'type': 'object', 'properties': {}}, minItems: 1 +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.realValue[0]). Properties: [] +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.singleValue). Properties: [] +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 array 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter). Items schema: {'$ref': '#/components/schemas/FilterVO', 'type': 'string'}, minItems: 1 +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.subFilter[0]): example_string +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 string 类型数据 ('') for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.groupFilter.symbol): example_string +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751] 生成 object 类型数据 for (context: post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751_body.query.sort). Properties: [] +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - Initial request body generated for 'post__api_dms_dms_instance_code_v1_cd_geo_unit_version_135751' (type: ) +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 应用请求覆盖: {'path_params': {'dms_instance_code': '{{stage_context.dms_instance_code}}', 'version': '{{stage_context.api_version}}'}, 'headers': {'tenant-id': 'your-tenant-id', 'Authorization': 'Bearer your-test-token'}, 'query_params': {'pageNo': 1, 'pageSize': 10}, 'body': {'isSearchCount': True, 'query': {'fields': ['dsid', 'wellCommonName', 'dataRegion'], 'filter': {'key': 'wellCommonName', 'symbol': '=', 'realValue': ['{{stage_context.unique_resource_name}}']}}}} +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'List and Find Created Resource'] 解析上下文路径: 'dms_instance_code' 来自模板 '{{stage_context.dms_instance_code}}' +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'List and Find Created Resource'] 从上下文解析到值 'your_dms_instance_code...' (路径: 'dms_instance_code') +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'List and Find Created Resource'] 解析上下文路径: 'api_version' 来自模板 '{{stage_context.api_version}}' +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'List and Find Created Resource'] 从上下文解析到值 '1.0.0...' (路径: 'api_version') +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - DEBUG - [阶段步骤 'List and Find Created Resource'] 解析上下文路径: 'unique_resource_name' 来自模板 '{{stage_context.unique_resource_name}}' +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - INFO - [测试阶段步骤 'List and Find Created Resource'] 从上下文解析到值 'TestResource_1750387133_207b0e...' (路径: 'unique_resource_name') +2025-06-20 10:38:53,328 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 发送API请求: POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 收到响应. Status: 200. 验证中... +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 执行断言 'find_resource_in_list_and_extract_id' +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 断言 'find_resource_in_list_and_extract_id' 失败: Resource not found: Name 'TestResource_1750387133_207b0e' (field: wellCommonName) not found in list at path 'data.list'. +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 提取输出到上下文. Map: {'found_id_from_list': 'data.list.0.dsid'} +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - DEBUG - [List and Find Created Resource] 尝试提取 'data.list.0.dsid' 到上下文变量 'found_id_from_list' +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - WARNING - [List and Find Created Resource] 未知的提取源类型 'data' in path 'data.list.0.dsid' +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - DEBUG - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 调用 after_step 钩子. +2025-06-20 10:38:53,355 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - DEBUG - Executing after_step for step 'List and Find Created Resource' in stage 'generic_crud_validation_stage' +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 执行完毕. 状态: 失败, 耗时: 0.03s +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - WARNING - Stage 'generic_crud_validation_stage', Step 'List and Find Created Resource': 状态为 失败 且 continue_on_failure=False. 中止测试阶段 'generic_crud_validation_stage'. +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - DEBUG - 调用 stage 'generic_crud_validation_stage' 的 after_stage 钩子. 当前阶段结果状态: 失败 +2025-06-20 10:38:53,355 - ddms_compliance_suite.stage_framework.GenericCRUDValidationStage - INFO - Finished stage 'Generic CRUD Validation Stage'. API Group: '地质单元'. Final Status: Status.FAILED. Final Context Keys: ['unique_resource_name', 'updated_resource_name', 'unique_feature_value', 'updated_feature_value', 'cfg_list_path_in_listresponse', 'cfg_name_field_in_listitem', 'cfg_id_field_in_listitem', 'cfg_resource_object_path_in_detailresponse', 'cfg_name_field_in_detailresponse', 'cfg_id_field_in_detailresponse', 'cfg_resource_object_path_in_updateresponse', 'cfg_feature_field_name_for_validation', 'dms_instance_code', 'api_version'] +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - 测试阶段 'generic_crud_validation_stage' (API分组: '地质单元') 执行完毕. 最终状态: 失败, 耗时: 0.05s +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - API Test Stage execution processed. Considered 2 (stage_definition x api_group) combinations. +2025-06-20 10:38:53,355 - __main__ - INFO - API测试阶段 (Stages) 执行完毕。 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - -------------------- API Test Summary -------------------- +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Start Time: 2025-06-20T10:38:16.672560 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - End Time: 2025-06-20T10:38:53.355720 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Total Duration: 36.68 seconds +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - --- Endpoints --- +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Total Endpoints Defined: 6 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Endpoints Tested: 6 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 0 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 6 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Partial Success: 0 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 0.00% +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - --- Test Cases --- +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Applicable: 108 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Total Test Cases Executed: 108 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 79 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 29 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0 +2025-06-20 10:38:53,355 - ddms_compliance_suite.test_orchestrator - INFO - Skipped (within endpoints): 0 +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 73.15% +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - --- Stages --- +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Defined: 1 +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Total Stages Executed: 1 +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Passed: 0 +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Failed: 1 +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Error: 0 +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Skipped: 0 +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - Success Rate: 0.00% +2025-06-20 10:38:53,356 - ddms_compliance_suite.test_orchestrator - INFO - -------------------------------------------------------- +2025-06-20 10:38:53,359 - __main__ - INFO - 测试结果已保存为JSON: test_reports/summary.json +2025-06-20 10:38:53,359 - __main__ - INFO - API调用详情将以 Markdown 格式保存到目录 'test_reports' (使用默认文件名 'api_call_details.md') +2025-06-20 10:38:53,367 - __main__ - INFO - API调用详情已保存为 Markdown: test_reports/api_call_details.md +2025-06-20 10:38:53,368 - __main__ - INFO - 部分测试失败或出错,请检查报告。 +DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 482\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_uy507l", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' DEBUG: curlify generated command (raw): curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id DEBUG: curlify generated command (repr): 'curl -X GET -H \'User-Agent: python-requests/2.32.3\' -H \'Accept-Encoding: gzip, deflate, br, zstd\' -H \'Accept: application/json\' -H \'Connection: keep-alive\' -H \'tenant-id: header_val_tenant-id\' -H \'Content-Type: application/json\' -H \'Content-Length: 477\' -d \'{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id' -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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 120' -d '{"version": "1.0.0", "data": [{"wellCommonName": "TestResource_1750070194_ff0a3f", "dataRegion": "Feature_1750070194"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit -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 \'tenant-id: your-tenant-id\' -H \'Content-Type: application/json\' -H \'Authorization: Bearer your-test-token\' -H \'Content-Length: 120\' -d \'{"version": "1.0.0", "data": [{"wellCommonName": "TestResource_1750070194_ff0a3f", "dataRegion": "Feature_1750070194"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit' -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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 187' -d '{"isSearchCount": true, "query": {"fields": ["dsid", "wellCommonName", "dataRegion"], "filter": {"key": "wellCommonName", "symbol": "=", "realValue": ["TestResource_1750070194_ff0a3f"]}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=1&pageSize=10' -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 \'tenant-id: your-tenant-id\' -H \'Content-Type: application/json\' -H \'Authorization: Bearer your-test-token\' -H \'Content-Length: 187\' -d \'{"isSearchCount": true, "query": {"fields": ["dsid", "wellCommonName", "dataRegion"], "filter": {"key": "wellCommonName", "symbol": "=", "realValue": ["TestResource_1750070194_ff0a3f"]}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=1&pageSize=10\'' +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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 120' -d '{"version": "1.0.0", "data": [{"wellCommonName": "TestResource_1750387133_207b0e", "dataRegion": "Feature_1750387133"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit +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 \'tenant-id: your-tenant-id\' -H \'Content-Type: application/json\' -H \'Authorization: Bearer your-test-token\' -H \'Content-Length: 120\' -d \'{"version": "1.0.0", "data": [{"wellCommonName": "TestResource_1750387133_207b0e", "dataRegion": "Feature_1750387133"}]}\' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit' +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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 187' -d '{"isSearchCount": true, "query": {"fields": ["dsid", "wellCommonName", "dataRegion"], "filter": {"key": "wellCommonName", "symbol": "=", "realValue": ["TestResource_1750387133_207b0e"]}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=1&pageSize=10' +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 \'tenant-id: your-tenant-id\' -H \'Content-Type: application/json\' -H \'Authorization: Bearer your-test-token\' -H \'Content-Length: 187\' -d \'{"isSearchCount": true, "query": {"fields": ["dsid", "wellCommonName", "dataRegion"], "filter": {"key": "wellCommonName", "symbol": "=", "realValue": ["TestResource_1750387133_207b0e"]}}}\' --insecure \'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=1&pageSize=10\'' diff --git a/test_reports/api_call_details.md b/test_reports/api_call_details.md index 39f34ab..c45a71b 100644 --- a/test_reports/api_call_details.md +++ b/test_reports/api_call_details.md @@ -58,7 +58,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0618s` +- **Elapsed Time:** `0.5306s` - **Headers:** ```json { @@ -67,7 +67,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:01 GMT", + "Date": "Fri, 20 Jun 2025 02:38:17 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -154,7 +154,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0170s` +- **Elapsed Time:** `0.0519s` - **Headers:** ```json { @@ -163,7 +163,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:01 GMT", + "Date": "Fri, 20 Jun 2025 02:38:17 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -250,7 +250,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0163s` +- **Elapsed Time:** `0.0642s` - **Headers:** ```json { @@ -259,7 +259,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:01 GMT", + "Date": "Fri, 20 Jun 2025 02:38:17 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -346,7 +346,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0167s` +- **Elapsed Time:** `0.0490s` - **Headers:** ```json { @@ -355,7 +355,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:01 GMT", + "Date": "Fri, 20 Jun 2025 02:38:17 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -442,7 +442,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0466s` +- **Elapsed Time:** `0.0854s` - **Headers:** ```json { @@ -451,7 +451,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:20 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -538,7 +538,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0225s` +- **Elapsed Time:** `0.0277s` - **Headers:** ```json { @@ -547,7 +547,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:20 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -634,7 +634,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0206s` +- **Elapsed Time:** `0.0271s` - **Headers:** ```json { @@ -643,7 +643,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -730,7 +730,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0164s` +- **Elapsed Time:** `0.0413s` - **Headers:** ```json { @@ -739,7 +739,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -826,7 +826,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0176s` +- **Elapsed Time:** `0.0332s` - **Headers:** ```json { @@ -835,7 +835,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -922,7 +922,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0135s` +- **Elapsed Time:** `0.0294s` - **Headers:** ```json { @@ -931,7 +931,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1018,7 +1018,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0328s` +- **Elapsed Time:** `0.0307s` - **Headers:** ```json { @@ -1027,7 +1027,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1114,7 +1114,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0225s` +- **Elapsed Time:** `0.0321s` - **Headers:** ```json { @@ -1123,7 +1123,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1210,7 +1210,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0124s` +- **Elapsed Time:** `0.0271s` - **Headers:** ```json { @@ -1219,7 +1219,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1306,7 +1306,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0132s` +- **Elapsed Time:** `0.0235s` - **Headers:** ```json { @@ -1315,7 +1315,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1402,7 +1402,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0126s` +- **Elapsed Time:** `0.0230s` - **Headers:** ```json { @@ -1411,7 +1411,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1441,7 +1441,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version` **cURL Command:** ```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_kaj20t", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_8j5lv9", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version ``` ### Request Details - **Method:** `POST` @@ -1467,7 +1467,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ], "filter": { "key": "example_string", - "logic": "invalid_enum_kaj20t", + "logic": "invalid_enum_8j5lv9", "realValue": [ {} ], @@ -1498,7 +1498,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0119s` +- **Elapsed Time:** `0.0269s` - **Headers:** ```json { @@ -1507,7 +1507,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1594,7 +1594,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0176s` +- **Elapsed Time:** `0.0277s` - **Headers:** ```json { @@ -1603,7 +1603,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1690,7 +1690,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0114s` +- **Elapsed Time:** `0.0268s` - **Headers:** ```json { @@ -1699,7 +1699,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "208", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1793,16 +1793,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0128s` +- **Elapsed Time:** `0.0524s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "372", + "Content-Length": "365", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -1810,28 +1810,28 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 81, - "message": "in est nisi", + "code": 71, + "message": "qui ex", "data": { - "total": 68, + "total": 88, "list": [ { - "dsid": "94", - "dataRegion": "qui", + "dsid": "71", + "dataRegion": "ipsum", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "72", - "dataRegion": "mollit", + "dsid": "1", + "dataRegion": "do", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "64", - "dataRegion": "velit adipisicing", + "dsid": "61", + "dataRegion": "nostrud amet ipsum", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -1909,125 +1909,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0121s` +- **Elapsed Time:** `0.0238s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "302", + "Content-Length": "181", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 64, - "message": "labore dolor cupidatat", - "data": { - "total": 6, - "list": [ - { - "dsid": "41", - "dataRegion": "est elit commodo dolore consectetur", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "57", - "dataRegion": "minim", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "pageNo": "query_val_pageNo", - "pageSize": "query_val_pageSize" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0128s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "410", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -2036,27 +1927,13 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ```json { "code": 67, - "message": "nostrud", + "message": "ut aliquip anim commodo sit", "data": { - "total": 13, + "total": 53, "list": [ { - "dsid": "96", - "dataRegion": "Lorem veniam mollit consequat adipisicing", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "85", - "dataRegion": "ea elit cupidatat", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "20", - "dataRegion": "anim culpa", + "dsid": "79", + "dataRegion": "qui sit", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -2134,16 +2011,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0152s` +- **Elapsed Time:** `0.0388s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "205", + "Content-Length": "193", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:08 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -2151,14 +2028,14 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 31, - "message": "eiusmod adipisicing culpa ad anim", + "code": 16, + "message": "quis reprehenderit in ut", "data": { - "total": 32, + "total": 9, "list": [ { - "dsid": "94", - "dataRegion": "anim fugiat pariatur nisi", + "dsid": "28", + "dataRegion": "fugiat ut sint ex minim", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -2236,16 +2113,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0500s` +- **Elapsed Time:** `0.0843s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "401", + "Content-Length": "171", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", + "Date": "Fri, 20 Jun 2025 02:38:21 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -2253,28 +2130,538 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 15, - "message": "incididunt ut", + "code": 64, + "message": "veniam", "data": { - "total": 69, + "total": 11, + "list": [ + { + "dsid": "95", + "dataRegion": "culpa dolore dolor", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "pageNo": "query_val_pageNo", + "pageSize": "query_val_pageSize" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0436s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "278", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 23, + "message": "consequat", + "data": { + "total": 95, + "list": [ + { + "dsid": "16", + "dataRegion": "aute exercitation", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "91", + "dataRegion": "consectetur", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "pageNo": "query_val_pageNo", + "pageSize": "query_val_pageSize" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0246s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "185", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 71, + "message": "dolor", + "data": { + "total": 79, + "list": [ + { + "dsid": "49", + "dataRegion": "Excepteur cupidatat ut sed dolore", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "pageNo": "query_val_pageNo", + "pageSize": "query_val_pageSize" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0239s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "180", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 100, + "message": "ut consectetur veniam", + "data": { + "total": 1, + "list": [ + { + "dsid": "61", + "dataRegion": "quis officia", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "pageNo": "query_val_pageNo", + "pageSize": "query_val_pageSize" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0345s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "200", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 54, + "message": "irure quis eiusmod id aliqua", + "data": { + "total": 30, + "list": [ + { + "dsid": "86", + "dataRegion": "qui sunt dolore Excepteur", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "pageNo": "query_val_pageNo", + "pageSize": "query_val_pageSize" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0324s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "278", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 77, + "message": "dolor ex voluptate", + "data": { + "total": 45, "list": [ { "dsid": "4", - "dataRegion": "sunt sint", + "dataRegion": "ex", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "1", - "dataRegion": "labore sed laboris consequat", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "62", - "dataRegion": "Excepteur ad in in", + "dsid": "51", + "dataRegion": "qui enim dolor non", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -2352,109 +2739,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0216s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "184", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 25, - "message": "in cupidatat sit pariatur eiusmod", - "data": { - "total": 70, - "list": [ - { - "dsid": "30", - "dataRegion": "anim", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "pageNo": "query_val_pageNo", - "pageSize": "query_val_pageSize" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0170s` +- **Elapsed Time:** `0.0303s` - **Headers:** ```json { @@ -2463,7 +2748,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "392", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -2471,28 +2756,28 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 66, - "message": "est in cillum minim", + "code": 72, + "message": "eu ad mollit non", "data": { - "total": 6, + "total": 21, "list": [ { - "dsid": "20", - "dataRegion": "officia Lorem commodo", + "dsid": "81", + "dataRegion": "laborum", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "20", - "dataRegion": "magna deserunt", + "dsid": "26", + "dataRegion": "nisi aute", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "48", - "dataRegion": "quis", + "dsid": "29", + "dataRegion": "laboris anim pariatur qui", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -2570,16 +2855,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0161s` +- **Elapsed Time:** `0.0256s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "210", + "Content-Length": "307", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -2587,116 +2872,21 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 97, - "message": "cupidatat dolor reprehenderit", + "code": 90, + "message": "dolor voluptate Excepteur in est", "data": { - "total": 67, - "list": [ - { - "dsid": "77", - "dataRegion": "nisi ad cupidatat incididunt dolor", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "pageNo": "query_val_pageNo", - "pageSize": "query_val_pageSize" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0147s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "190", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 2, - "message": "quis tempor esse est Ut", - "data": { - "total": 11, + "total": 73, "list": [ { "dsid": "50", - "dataRegion": "dolor sit fugiat elit", + "dataRegion": "dolore nisi", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "38", + "dataRegion": "Ut veniam ipsum anim eu", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -2774,16 +2964,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0185s` +- **Elapsed Time:** `0.0249s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "314", + "Content-Length": "160", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -2791,239 +2981,14 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 85, - "message": "quis dolore qui ullamco laborum", + "code": 29, + "message": "proident", "data": { - "total": 40, + "total": 92, "list": [ { - "dsid": "48", - "dataRegion": "quis aliqua dolor", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "85", - "dataRegion": "ea veniam adipisicing sit", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "pageNo": "query_val_pageNo", - "pageSize": "query_val_pageSize" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0189s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "335", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 26, - "message": "laboris sunt aute ullamco", - "data": { - "total": 22, - "list": [ - { - "dsid": "45", - "dataRegion": "velit laborum ex eiusmod amet", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "39", - "dataRegion": "cupidatat commodo pariatur eiusmod magna", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "pageNo": "query_val_pageNo", - "pageSize": "query_val_pageSize" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0133s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "298", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 31, - "message": "in", - "data": { - "total": 60, - "list": [ - { - "dsid": "15", - "dataRegion": "esse qui velit cupidatat", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "6", - "dataRegion": "cupidatat id aliqua exercitation", + "dsid": "78", + "dataRegion": "nulla", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -3101,16 +3066,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0127s` +- **Elapsed Time:** `0.0320s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "302", + "Content-Length": "280", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -3118,21 +3083,21 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 4, - "message": "ipsum irure est Ut laboris", + "code": 40, + "message": "id non", "data": { - "total": 69, + "total": 3, "list": [ { - "dsid": "35", - "dataRegion": "labore sed", + "dsid": "15", + "dataRegion": "velit qui id nulla", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "72", - "dataRegion": "id Ut elit culpa consequat", + "dsid": "39", + "dataRegion": "ad reprehenderit", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -3210,16 +3175,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0126s` +- **Elapsed Time:** `0.0268s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "413", + "Content-Length": "281", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -3227,28 +3192,21 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 84, - "message": "ad", + "code": 72, + "message": "ut dolor", "data": { - "total": 71, + "total": 100, "list": [ { - "dsid": "68", - "dataRegion": "consectetur magna", + "dsid": "23", + "dataRegion": "tempor Duis", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "60", - "dataRegion": "Excepteur id eu consequat", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "98", - "dataRegion": "sint Excepteur eiusmod commodo sed", + "dsid": "49", + "dataRegion": "dolore sed cupidatat", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -3326,16 +3284,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0123s` +- **Elapsed Time:** `0.0224s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "201", + "Content-Length": "180", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -3343,130 +3301,239 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 81, - "message": "tempor elit dolor aliqua ad", + "code": 94, + "message": "culpa est tempor eu ipsum", "data": { - "total": 87, + "total": 73, "list": [ + { + "dsid": "31", + "dataRegion": "non anim", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_wf2e1t", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "pageNo": "query_val_pageNo", + "pageSize": "query_val_pageSize" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "invalid_enum_wf2e1t", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0215s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "312", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 59, + "message": "anim occaecat", + "data": { + "total": 52, + "list": [ + { + "dsid": "82", + "dataRegion": "voluptate aliquip elit minim pariatur", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "12", + "dataRegion": "esse nostrud velit in", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "pageNo": "query_val_pageNo", + "pageSize": "query_val_pageSize" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0227s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "382", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 62, + "message": "reprehenderit sed eu", + "data": { + "total": 13, + "list": [ + { + "dsid": "99", + "dataRegion": "sit dolor elit", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, { "dsid": "46", - "dataRegion": "do quis aliquip aliqua anim", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_9ssyno", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "pageNo": "query_val_pageNo", - "pageSize": "query_val_pageSize" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "invalid_enum_9ssyno", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0148s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "378", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:12 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 100, - "message": "sint elit tempor", - "data": { - "total": 75, - "list": [ - { - "dsid": "85", - "dataRegion": "sint est Ut sunt", + "dataRegion": "Lorem ut", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "52", - "dataRegion": "pariatur", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "11", - "dataRegion": "in", + "dsid": "88", + "dataRegion": "magna", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -3544,16 +3611,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0162s` +- **Elapsed Time:** `0.0332s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "172", + "Content-Length": "411", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -3561,116 +3628,28 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 43, - "message": "id Excepteur qui dolore", + "code": 46, + "message": "esse commodo", "data": { - "total": 91, + "total": 22, "list": [ { - "dsid": "76", - "dataRegion": "ut", + "dsid": "75", + "dataRegion": "cupidatat esse", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize' -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=query_val_pageNo&pageSize=query_val_pageSize` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "pageNo": "query_val_pageNo", - "pageSize": "query_val_pageSize" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0130s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "205", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 24, - "message": "irure velit officia cupidatat proident", - "data": { - "total": 60, - "list": [ + }, { - "dsid": "91", - "dataRegion": "cillum nisi dolor ex", + "dsid": "57", + "dataRegion": "elit eiusmod do dolore", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "36", + "dataRegion": "velit est ut ipsum consequat", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -3712,16 +3691,16 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0137s` +- **Elapsed Time:** `0.0380s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "62", + "Content-Length": "58", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -3729,8 +3708,8 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 20, - "message": "Lorem deserunt ex esse ut", + "code": 3, + "message": "nostrud Excepteur amet", "data": false } ``` @@ -3767,16 +3746,16 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0122s` +- **Elapsed Time:** `0.0252s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "60", + "Content-Length": "46", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -3784,173 +3763,8 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 18, - "message": "ut adipisicing consequat", - "data": true -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0126s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "70", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 72, - "message": "ut nisi cupidatat esse consectetur", - "data": true -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0145s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "62", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:13 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 7, - "message": "eiusmod tempor fugiat minim", - "data": true -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0461s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "55", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 84, - "message": "laborum enim magna", + "code": 47, + "message": "tempor et", "data": false } ``` @@ -3987,71 +3801,16 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0214s` +- **Elapsed Time:** `0.0298s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "72", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 31, - "message": "laborum laboris", - "data": true -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0171s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "52", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4060,7 +3819,7 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ```json { "code": 24, - "message": "irure ullamco id", + "message": "consequat exercitation velit eiusmod", "data": true } ``` @@ -4097,7 +3856,7 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0157s` +- **Elapsed Time:** `0.0306s` - **Headers:** ```json { @@ -4106,7 +3865,7 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d "Content-Type": "application/json; charset=utf-8", "Content-Length": "53", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:28 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4114,8 +3873,613 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 23, - "message": "dolor quis qui ea", + "code": 14, + "message": "ipsum nostrud et", + "data": false +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0472s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "66", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:33 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 35, + "message": "in et Ut consectetur Excepteur", + "data": true +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0308s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "56", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:33 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 71, + "message": "enim ex non id aute", + "data": false +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0263s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "66", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:33 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 18, + "message": "proident dolore commodo labore", + "data": true +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0237s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "65", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:33 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 36, + "message": "officia eiusmod anim pariatur", + "data": true +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0210s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "49", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:33 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 61, + "message": "ut est dolore", + "data": true +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0378s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "47", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:33 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 70, + "message": "id aliquip", + "data": false +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0309s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "53", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 19, + "message": "reprehenderit in", + "data": false +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0211s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "53", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 66, + "message": "Duis sed nostrud", + "data": false +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": 12345 +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0225s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "49", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 49, + "message": "esse eiusmod", + "data": false +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 42' -d '{"id": 12345, "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": 12345, + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0217s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "40", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 14, + "message": "quis", + "data": true +} + ``` + +--- +## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `PUT` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "id": "example_string", + "version": "example_string" +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0249s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "41", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 29, + "message": "ipsum", "data": true } ``` @@ -4159,9 +4523,9 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "42", + "Content-Length": "60", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4169,393 +4533,8 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 18, - "message": "veniam", - "data": true -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0138s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "57", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 52, - "message": "anim laboris Lorem ut", - "data": true -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0136s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "65", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 9, - "message": "mollit occaecat Ut nisi dolore", - "data": true -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0123s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "47", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 61, - "message": "dolor Duis", - "data": false -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": 12345 -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0157s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "49", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 8, - "message": "Lorem ullamco", - "data": false -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 42' -d '{"id": 12345, "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": 12345, - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0129s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "52", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 2, - "message": "Excepteur est ex", - "data": false -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0153s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "53", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 20, - "message": "Lorem commodo ut", - "data": false -} - ``` - ---- -## `PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 53' -d '{"id": "example_string", "version": "example_string"}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `PUT` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "id": "example_string", - "version": "example_string" -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0134s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "66", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 66, - "message": "eu exercitation tempor est ea", + "code": 19, + "message": "Excepteur aute ipsum eu", "data": false } ``` @@ -4591,7 +4570,7 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0117s` +- **Elapsed Time:** `0.0228s` - **Headers:** ```json { @@ -4600,7 +4579,7 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d "Content-Type": "application/json; charset=utf-8", "Content-Length": "13", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4638,7 +4617,7 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0184s` +- **Elapsed Time:** `0.0213s` - **Headers:** ```json { @@ -4647,7 +4626,7 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d "Content-Type": "application/json; charset=utf-8", "Content-Length": "45", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4655,8 +4634,8 @@ curl -X PUT -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 92, - "message": "elit amet", + "code": 48, + "message": "voluptate", "data": true } ``` @@ -4695,16 +4674,16 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0123s` +- **Elapsed Time:** `0.0196s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "47", + "Content-Length": "44", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4712,122 +4691,8 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip - **Body:** ```json { - "code": 30, - "message": "consectetur", - "data": true -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0122s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "41", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 80, - "message": "velit", - "data": true -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0131s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "66", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 81, - "message": "eiusmod ad veniam nostrud est", + "code": 43, + "message": "eiusmod", "data": false } ``` @@ -4866,16 +4731,16 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0156s` +- **Elapsed Time:** `0.0284s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "58", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:17 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4883,9 +4748,9 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip - **Body:** ```json { - "code": 64, - "message": "consequat nulla", - "data": true + "code": 37, + "message": "nisi ut aliqua tempor", + "data": false } ``` @@ -4923,64 +4788,7 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0540s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "62", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:22 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 84, - "message": "ut in non fugiat voluptate", - "data": true -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0264s` +- **Elapsed Time:** `0.0239s` - **Headers:** ```json { @@ -4989,7 +4797,7 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip "Content-Type": "application/json; charset=utf-8", "Content-Length": "63", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:22 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -4997,236 +4805,8 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip - **Body:** ```json { - "code": 30, - "message": "reprehenderit veniam culpa", - "data": false -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0177s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "62", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 83, - "message": "tempor nostrud amet minim", - "data": false -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0148s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "63", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 95, - "message": "Duis enim irure eiusmod in", - "data": false -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0148s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "49", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 60, - "message": "id voluptate", - "data": false -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0132s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "69", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 77, - "message": "eiusmod pariatur aute ipsum dolor", + "code": 47, + "message": "fugiat velit veniam officia", "data": true } ``` @@ -5265,16 +4845,16 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0165s` +- **Elapsed Time:** `0.0207s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "53", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", + "Date": "Fri, 20 Jun 2025 02:38:34 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -5283,7 +4863,7 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ```json { "code": 32, - "message": "incididunt Duis", + "message": "incididunt tempor", "data": true } ``` @@ -5322,16 +4902,244 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0170s` +- **Elapsed Time:** `0.0389s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "60", + "Content-Length": "72", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 82, + "message": "magna officia ea Excepteur pariatur", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0225s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "44", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 75, + "message": "eiusmod", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0311s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "56", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 20, + "message": "quis mollit velit Ut", + "data": true +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0287s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "61", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 59, + "message": "nostrud pariatur eiusmod", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0206s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "43", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -5340,11 +5148,182 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ```json { "code": 65, - "message": "consequat anim labore do", + "message": "ut est", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0228s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "67", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 94, + "message": "nostrud in anim esse Excepteur", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0198s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "54", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 69, + "message": "proident Ut veniam", "data": true } ``` +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0223s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "39", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 22, + "message": "ut", + "data": false +} + ``` + --- ## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=12345` **cURL Command:** @@ -5379,16 +5358,16 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0124s` +- **Elapsed Time:** `0.0240s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "44", + "Content-Length": "63", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -5396,8 +5375,8 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip - **Body:** ```json { - "code": 25, - "message": "deserunt", + "code": 26, + "message": "laboris deserunt in commodo", "data": true } ``` @@ -5436,16 +5415,16 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0133s` +- **Elapsed Time:** `0.0267s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "39", + "Content-Length": "71", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -5453,183 +5432,183 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip - **Body:** ```json { - "code": 72, - "message": "est", + "code": 40, + "message": "in incididunt dolore reprehenderit", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0207s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "56", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 42, + "message": "irure laborum nulla", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0205s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "51", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 4, + "message": "deserunt dolore", + "data": false +} + ``` + +--- +## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' +``` +### Request Details +- **Method:** `DELETE` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Query Parameters:** +```json +{ + "id": "dsid" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + "example_string" + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0217s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "71", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 54, + "message": "consequat cupidatat mollit proident", "data": true } ``` ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0121s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "58", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 70, - "message": "ad sed anim est Lorem", - "data": false -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0123s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "44", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 79, - "message": "aute ut", - "data": false -} - ``` - ---- -## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 57' -d '{"version": "example_string", "data": ["example_string"]}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid' -``` -### Request Details -- **Method:** `DELETE` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit?id=dsid` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Query Parameters:** -```json -{ - "id": "dsid" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - "example_string" - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0146s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "55", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 35, - "message": "commodo ipsum nisi", - "data": false -} - ``` - --- ## `DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` **cURL Command:** @@ -5658,399 +5637,7 @@ curl -X DELETE -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0121s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "54", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 34, - "message": "laboris nisi Duis", - "data": false -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0173s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "47", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 14, - "message": "consectetur", - "data": true -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0124s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "40", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 82, - "message": "sit", - "data": false -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0125s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "64", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 20, - "message": "do anim consequat dolore qui", - "data": true -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0120s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:23 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 98, - "message": "laboris ex qui", - "data": false -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0521s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "53", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 100, - "message": "dolore elit aute", - "data": true -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0219s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "42", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 47, - "message": "dolor", - "data": false -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0217s` +- **Elapsed Time:** `0.0200s` - **Headers:** ```json { @@ -6059,7 +5646,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "61", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6067,8 +5654,64 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 34, - "message": "culpa fugiat non nulla ea", + "code": 86, + "message": "voluptate ut esse dolore", + "data": false +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0243s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "42", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 74, + "message": "sit ut", "data": true } ``` @@ -6106,16 +5749,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0160s` +- **Elapsed Time:** `0.0231s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "64", + "Content-Length": "66", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:40 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6123,8 +5766,8 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 93, - "message": "dolore sed eiusmod cupidatat", + "code": 91, + "message": "veniam sunt deserunt labore in", "data": true } ``` @@ -6162,16 +5805,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0151s` +- **Elapsed Time:** `0.0204s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "51", + "Content-Length": "65", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:41 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6179,8 +5822,8 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 40, - "message": "pariatur tempor", + "code": 27, + "message": "laborum dolore proident minim", "data": true } ``` @@ -6225,9 +5868,9 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "66", + "Content-Length": "62", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:41 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6235,9 +5878,9 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 41, - "message": "incididunt sunt dolor commodo", - "data": false + "code": 99, + "message": "cupidatat tempor veniam ut", + "data": true } ``` @@ -6274,63 +5917,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0162s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "63", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 22, - "message": "proident eiusmod qui minim", - "data": false -} - ``` - ---- -## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -**cURL Command:** -```sh -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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit -``` -### Request Details -- **Method:** `POST` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "version": "example_string", - "data": [ - { - "bsflag": 0.0, - "wellCommonName": "example_string", - "wellId": "example_string", - "dataRegion": "example_string" - } - ] -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0148s` +- **Elapsed Time:** `0.0377s` - **Headers:** ```json { @@ -6339,7 +5926,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "42", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6347,8 +5934,64 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 16, - "message": "magna", + "code": 34, + "message": "aliqua", + "data": true +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0546s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "62", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 80, + "message": "nisi Duis cupidatat dolor", "data": false } ``` @@ -6386,16 +6029,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0158s` +- **Elapsed Time:** `0.0417s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "66", + "Content-Length": "71", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6403,12 +6046,348 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 1, - "message": "incididunt labore nulla dolore", + "code": 56, + "message": "aute labore eu exercitation nostrud", + "data": true +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0386s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "52", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 40, + "message": "in sed ad tempor", + "data": true +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0357s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "41", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 93, + "message": "nulla", + "data": true +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0757s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "50", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 70, + "message": "Duis consequat", + "data": true +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0607s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "49", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 93, + "message": "amet id esse", "data": false } ``` +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0594s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "52", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 28, + "message": "commodo nostrud", + "data": false +} + ``` + +--- +## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +**cURL Command:** +```sh +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 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 152' -d '{"version": "example_string", "data": [{"bsflag": 0.0, "wellCommonName": "example_string", "wellId": "example_string", "dataRegion": "example_string"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit +``` +### Request Details +- **Method:** `POST` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "version": "example_string", + "data": [ + { + "bsflag": 0.0, + "wellCommonName": "example_string", + "wellId": "example_string", + "dataRegion": "example_string" + } + ] +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0375s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "42", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 32, + "message": "mollit", + "data": true +} + ``` + --- ## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit` **cURL Command:** @@ -6442,7 +6421,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0177s` +- **Elapsed Time:** `0.0405s` - **Headers:** ```json { @@ -6451,7 +6430,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "Content-Type": "application/json; charset=utf-8", "Content-Length": "53", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6459,8 +6438,8 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 62, - "message": "aliqua culpa anim", + "code": 13, + "message": "ad est laboris ut", "data": true } ``` @@ -6498,16 +6477,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0144s` +- **Elapsed Time:** `0.0549s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "67", + "Content-Length": "46", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6515,8 +6494,8 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 80, - "message": "voluptate pariatur dolore in Ut", + "code": 49, + "message": "do Duis ea", "data": true } ``` @@ -6554,16 +6533,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0181s` +- **Elapsed Time:** `0.0234s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "40", + "Content-Length": "57", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6571,9 +6550,9 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 22, - "message": "sint", - "data": true + "code": 26, + "message": "culpa sunt consequat", + "data": false } ``` @@ -6609,16 +6588,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0131s` +- **Elapsed Time:** `0.0215s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "58", + "Content-Length": "47", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6626,9 +6605,9 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 59, - "message": "ea enim aliquip magna", - "data": false + "code": 26, + "message": "occaecat do", + "data": true } ``` @@ -6665,16 +6644,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0125s` +- **Elapsed Time:** `0.0199s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "48", + "Content-Length": "47", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6682,9 +6661,9 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 50, - "message": "irure et eu", - "data": false + "code": 58, + "message": "eu pariatur", + "data": true } ``` @@ -6749,16 +6728,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0174s` +- **Elapsed Time:** `0.0201s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "284", + "Content-Length": "417", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -6766,538 +6745,239 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 74, - "message": "et esse in enim eiusmod", + "code": 71, + "message": "reprehenderit proident sint Ut", "data": { - "total": 88, - "list": [ - { - "dsid": "94", - "dataRegion": "nulla proident", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "9", - "dataRegion": "laboris", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -**cURL Command:** -```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -``` -### Request Details -- **Method:** `GET` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0137s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "411", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 12, - "message": "minim quis", - "data": { - "total": 17, - "list": [ - { - "dsid": "80", - "dataRegion": "et dolor nisi ut commodo", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "33", - "dataRegion": "pariatur", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "85", - "dataRegion": "magna ea reprehenderit veniam enim", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -**cURL Command:** -```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -``` -### Request Details -- **Method:** `GET` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0132s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "438", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 75, - "message": "quis consectetur anim tempor fugiat", - "data": { - "total": 69, - "list": [ - { - "dsid": "78", - "dataRegion": "pariatur est nostrud Duis", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "66", - "dataRegion": "nisi consequat dolore ullamco", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "89", - "dataRegion": "dolore eiusmod", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -**cURL Command:** -```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -``` -### Request Details -- **Method:** `GET` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0118s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "184", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:27 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 47, - "message": "sunt", - "data": { - "total": 81, - "list": [ - { - "dsid": "24", - "dataRegion": "sed velit consequat reprehenderit", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -**cURL Command:** -```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -``` -### Request Details -- **Method:** `GET` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0383s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "167", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 34, - "message": "adipisicing esse", - "data": { - "total": 99, - "list": [ - { - "dsid": "40", - "dataRegion": "nisi", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -**cURL Command:** -```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -``` -### Request Details -- **Method:** `GET` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0222s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "416", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 4, - "message": "consequat labore dolor est in", - "data": { - "total": 63, + "total": 6, "list": [ { "dsid": "45", - "dataRegion": "id esse voluptate dolore ut", + "dataRegion": "dolor", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "92", - "dataRegion": "sit sint", + "dsid": "64", + "dataRegion": "Excepteur ad labore", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "92", - "dataRegion": "dolore commodo non", + "dsid": "67", + "dataRegion": "ad sed dolor aliquip proident", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +**cURL Command:** +```sh +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +``` +### Request Details +- **Method:** `GET` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0244s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "256", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 56, + "message": "eu", + "data": { + "total": 83, + "list": [ + { + "dsid": "94", + "dataRegion": "dolore", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "47", + "dataRegion": "commodo", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +**cURL Command:** +```sh +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +``` +### Request Details +- **Method:** `GET` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0286s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "395", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 90, + "message": "mollit ad amet quis", + "data": { + "total": 86, + "list": [ + { + "dsid": "75", + "dataRegion": "Ut", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "48", + "dataRegion": "cupidatat velit", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "59", + "dataRegion": "elit sit amet incididunt", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -7375,9 +7055,9 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "190", + "Content-Length": "406", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:47 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -7385,14 +7065,28 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 25, - "message": "elit eu", + "code": 60, + "message": "occaecat sint culpa", "data": { - "total": 36, + "total": 61, "list": [ { - "dsid": "69", - "dataRegion": "culpa nostrud incididunt deserunt ex", + "dsid": "19", + "dataRegion": "aute voluptate", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "97", + "dataRegion": "eiusmod ullamco enim", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "85", + "dataRegion": "Lorem culpa tempor", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -7463,16 +7157,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0182s` +- **Elapsed Time:** `0.0406s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "194", + "Content-Length": "304", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:52 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -7480,14 +7174,21 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 75, - "message": "voluptate sint cupidatat nulla", + "code": 71, + "message": "occaecat quis aliquip dolore culpa", "data": { - "total": 54, + "total": 99, "list": [ { - "dsid": "6", - "dataRegion": "nulla culpa dolore", + "dsid": "48", + "dataRegion": "est ex cillum nostrud", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "7", + "dataRegion": "nisi Duis", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -7558,16 +7259,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0175s` +- **Elapsed Time:** `0.0220s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "412", + "Content-Length": "196", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:52 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -7575,28 +7276,14 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 14, - "message": "ut officia", + "code": 69, + "message": "nisi eu anim officia Lorem", "data": { - "total": 78, + "total": 30, "list": [ { - "dsid": "51", - "dataRegion": "aliquip eu sunt Lorem", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "39", - "dataRegion": "amet Duis et", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "25", - "dataRegion": "aliqua voluptate in cupidatat amet", + "dsid": "70", + "dataRegion": "est et in pariatur Duis", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -7667,16 +7354,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0169s` +- **Elapsed Time:** `0.0208s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "266", + "Content-Length": "292", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:52 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -7684,232 +7371,21 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 30, - "message": "qui Lorem", + "code": 57, + "message": "adipisicing aute", "data": { - "total": 51, + "total": 76, "list": [ { - "dsid": "80", - "dataRegion": "amet", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "95", - "dataRegion": "non occaecat", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -**cURL Command:** -```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -``` -### Request Details -- **Method:** `GET` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0158s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "305", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 100, - "message": "in", - "data": { - "total": 22, - "list": [ - { - "dsid": "79", - "dataRegion": "cupidatat in do in voluptate", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "2", - "dataRegion": "eiusmod proident voluptate enim ex", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - } - ] - } -} - ``` - ---- -## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -**cURL Command:** -```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id -``` -### Request Details -- **Method:** `GET` -- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` -- **Headers:** -```json -{ - "tenant-id": "header_val_tenant-id", - "Content-Type": "application/json", - "Accept": "application/json" -} - ``` -- **Body:** -```json -{ - "isSearchCount": true, - "query": { - "dataRegions": [ - "example_string" - ], - "fields": [ - "example_string" - ], - "filter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "groupFields": [ - "example_string" - ], - "groupFilter": { - "key": "example_string", - "logic": "example_string", - "realValue": [ - {} - ], - "singleValue": {}, - "subFilter": [ - "example_string" - ], - "symbol": "example_string" - }, - "sort": {} - } -} - ``` -### Response Details -- **Status Code:** `200` -- **Elapsed Time:** `0.0183s` -- **Headers:** -```json -{ - "Vary": "Origin", - "Access-Control-Allow-Origin": "*", - "Content-Type": "application/json; charset=utf-8", - "Content-Length": "423", - "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", - "Connection": "keep-alive", - "Keep-Alive": "timeout=5" -} - ``` -- **Body:** -```json -{ - "code": 28, - "message": "ullamco fugiat nulla nisi", - "data": { - "total": 79, - "list": [ - { - "dsid": "35", - "dataRegion": "fugiat officia", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "100", - "dataRegion": "consectetur laboris", + "dsid": "16", + "dataRegion": "ut nulla dolor do reprehenderit", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { "dsid": "42", - "dataRegion": "dolore mollit dolor Excepteur", + "dataRegion": "aute", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -7980,16 +7456,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0179s` +- **Elapsed Time:** `0.0254s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "165", + "Content-Length": "276", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -7997,14 +7473,531 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 59, - "message": "commodo sint non", + "code": 56, + "message": "pariatur", "data": { - "total": 56, + "total": 40, "list": [ { - "dsid": "70", - "dataRegion": "in", + "dsid": "86", + "dataRegion": "tempor laborum cillum Ut", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "51", + "dataRegion": "qui", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +**cURL Command:** +```sh +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +``` +### Request Details +- **Method:** `GET` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0343s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "315", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 41, + "message": "aute laboris cillum", + "data": { + "total": 42, + "list": [ + { + "dsid": "80", + "dataRegion": "in consequat laboris aute", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "76", + "dataRegion": "do ipsum adipisicing aute quis", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +**cURL Command:** +```sh +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +``` +### Request Details +- **Method:** `GET` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0239s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "295", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 77, + "message": "sed", + "data": { + "total": 71, + "list": [ + { + "dsid": "50", + "dataRegion": "elit dolore ex dolor pariatur", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "86", + "dataRegion": "exercitation do dolore", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +**cURL Command:** +```sh +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +``` +### Request Details +- **Method:** `GET` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0217s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "196", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 97, + "message": "cupidatat adipisicing", + "data": { + "total": 32, + "list": [ + { + "dsid": "77", + "dataRegion": "adipisicing deserunt nisi ut", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +**cURL Command:** +```sh +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +``` +### Request Details +- **Method:** `GET` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0225s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "403", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 15, + "message": "Ut labore dolor aute", + "data": { + "total": 4, + "list": [ + { + "dsid": "99", + "dataRegion": "id voluptate commodo do", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "52", + "dataRegion": "officia Duis", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "14", + "dataRegion": "deserunt magna", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + } + ] + } +} + ``` + +--- +## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +**cURL Command:** +```sh +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 477' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +``` +### Request Details +- **Method:** `GET` +- **Full URL:** `http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` +- **Headers:** +```json +{ + "tenant-id": "header_val_tenant-id", + "Content-Type": "application/json", + "Accept": "application/json" +} + ``` +- **Body:** +```json +{ + "isSearchCount": true, + "query": { + "dataRegions": [ + "example_string" + ], + "fields": [ + "example_string" + ], + "filter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "groupFields": [ + "example_string" + ], + "groupFilter": { + "key": "example_string", + "logic": "example_string", + "realValue": [ + {} + ], + "singleValue": {}, + "subFilter": [ + "example_string" + ], + "symbol": "example_string" + }, + "sort": {} + } +} + ``` +### Response Details +- **Status Code:** `200` +- **Elapsed Time:** `0.0241s` +- **Headers:** +```json +{ + "Vary": "Origin", + "Access-Control-Allow-Origin": "*", + "Content-Type": "application/json; charset=utf-8", + "Content-Length": "280", + "success": "false", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", + "Connection": "keep-alive", + "Keep-Alive": "timeout=5" +} + ``` +- **Body:** +```json +{ + "code": 45, + "message": "minim culpa", + "data": { + "total": 84, + "list": [ + { + "dsid": "48", + "dataRegion": "cillum", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "31", + "dataRegion": "ex magna dolore Ut sit", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -8075,16 +8068,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0146s` +- **Elapsed Time:** `0.0266s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "370", + "Content-Length": "166", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -8092,28 +8085,14 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 34, - "message": "aliquip ad voluptate", + "code": 51, + "message": "ut", "data": { - "total": 22, + "total": 93, "list": [ { - "dsid": "9", - "dataRegion": "nulla et", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "23", - "dataRegion": "ea", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "81", - "dataRegion": "sed in", + "dsid": "66", + "dataRegion": "enim in voluptate", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -8184,16 +8163,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0152s` +- **Elapsed Time:** `0.0252s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "420", + "Content-Length": "388", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -8201,28 +8180,28 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 52, - "message": "pariatur ex consectetur", + "code": 97, + "message": "ut non", "data": { - "total": 95, + "total": 77, "list": [ { - "dsid": "54", - "dataRegion": "elit incididunt aliqua voluptate", + "dsid": "43", + "dataRegion": "irure", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "41", - "dataRegion": "dolore ea reprehenderit", + "dsid": "78", + "dataRegion": "ut Duis", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "59", - "dataRegion": "ullamco", + "dsid": "74", + "dataRegion": "nostrud deserunt sed amet consequat", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -8236,7 +8215,7 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ## `GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id` **cURL Command:** ```sh -curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_zi0ifg", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id +curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'tenant-id: header_val_tenant-id' -H 'Content-Type: application/json' -H 'Content-Length: 482' -d '{"isSearchCount": true, "query": {"dataRegions": ["example_string"], "fields": ["example_string"], "filter": {"key": "example_string", "logic": "invalid_enum_uy507l", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "groupFields": ["example_string"], "groupFilter": {"key": "example_string", "logic": "example_string", "realValue": [{}], "singleValue": {}, "subFilter": ["example_string"], "symbol": "example_string"}, "sort": {}}}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id ``` ### Request Details - **Method:** `GET` @@ -8262,7 +8241,7 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ], "filter": { "key": "example_string", - "logic": "invalid_enum_zi0ifg", + "logic": "invalid_enum_uy507l", "realValue": [ {} ], @@ -8293,16 +8272,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0135s` +- **Elapsed Time:** `0.0283s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "306", + "Content-Length": "177", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -8310,21 +8289,14 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 23, - "message": "cupidatat Lorem in eiusmod", + "code": 4, + "message": "esse dolore sed", "data": { - "total": 46, + "total": 1, "list": [ { - "dsid": "21", - "dataRegion": "nostrud tempor laborum id pariatur", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "70", - "dataRegion": "ipsum", + "dsid": "89", + "dataRegion": "sunt mollit Lorem", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -8395,16 +8367,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0618s` +- **Elapsed Time:** `0.0241s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "198", + "Content-Length": "394", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -8412,14 +8384,28 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 86, - "message": "ut eiusmod culpa ad sunt", + "code": 69, + "message": "ea", "data": { - "total": 47, + "total": 27, "list": [ { - "dsid": "30", - "dataRegion": "enim aute do ea consectetur", + "dsid": "87", + "dataRegion": "ad proident dolore cillum dolore", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "49", + "dataRegion": "dolor Ut", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "32", + "dataRegion": "labore mollit sit", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -8490,16 +8476,16 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0149s` +- **Elapsed Time:** `0.0223s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "206", + "Content-Length": "307", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -8507,14 +8493,21 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d - **Body:** ```json { - "code": 87, - "message": "dolor velit dolor laborum", + "code": 20, + "message": "ea cillum sed ex eiusmod", "data": { - "total": 79, + "total": 6, "list": [ { - "dsid": "9", - "dataRegion": "eiusmod nostrud occaecat elit irure", + "dsid": "99", + "dataRegion": "fugiat commodo", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "86", + "dataRegion": "Excepteur nisi id dolore elit", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -8528,7 +8521,7 @@ curl -X GET -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, d ## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit` **cURL Command:** ```sh -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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 120' -d '{"version": "1.0.0", "data": [{"wellCommonName": "TestResource_1750070194_ff0a3f", "dataRegion": "Feature_1750070194"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit +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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 120' -d '{"version": "1.0.0", "data": [{"wellCommonName": "TestResource_1750387133_207b0e", "dataRegion": "Feature_1750387133"}]}' --insecure http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit ``` ### Request Details - **Method:** `POST` @@ -8548,24 +8541,24 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "version": "1.0.0", "data": [ { - "wellCommonName": "TestResource_1750070194_ff0a3f", - "dataRegion": "Feature_1750070194" + "wellCommonName": "TestResource_1750387133_207b0e", + "dataRegion": "Feature_1750387133" } ] } ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0138s` +- **Elapsed Time:** `0.0239s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "61", + "Content-Length": "50", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -8573,8 +8566,8 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 9, - "message": "officia tempor ex laboris", + "code": 3, + "message": "tempor aute do", "data": false } ``` @@ -8583,7 +8576,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ## `POST http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=1&pageSize=10` **cURL Command:** ```sh -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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 187' -d '{"isSearchCount": true, "query": {"fields": ["dsid", "wellCommonName", "dataRegion"], "filter": {"key": "wellCommonName", "symbol": "=", "realValue": ["TestResource_1750070194_ff0a3f"]}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=1&pageSize=10' +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 'tenant-id: your-tenant-id' -H 'Content-Type: application/json' -H 'Authorization: Bearer your-test-token' -H 'Content-Length: 187' -d '{"isSearchCount": true, "query": {"fields": ["dsid", "wellCommonName", "dataRegion"], "filter": {"key": "wellCommonName", "symbol": "=", "realValue": ["TestResource_1750387133_207b0e"]}}}' --insecure 'http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/your_dms_instance_code/v1/cd_geo_unit/1.0.0?pageNo=1&pageSize=10' ``` ### Request Details - **Method:** `POST` @@ -8618,7 +8611,7 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, "key": "wellCommonName", "symbol": "=", "realValue": [ - "TestResource_1750070194_ff0a3f" + "TestResource_1750387133_207b0e" ] } } @@ -8626,16 +8619,16 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, ``` ### Response Details - **Status Code:** `200` -- **Elapsed Time:** `0.0129s` +- **Elapsed Time:** `0.0257s` - **Headers:** ```json { "Vary": "Origin", "Access-Control-Allow-Origin": "*", "Content-Type": "application/json; charset=utf-8", - "Content-Length": "183", + "Content-Length": "456", "success": "false", - "Date": "Mon, 16 Jun 2025 10:36:34 GMT", + "Date": "Fri, 20 Jun 2025 02:38:53 GMT", "Connection": "keep-alive", "Keep-Alive": "timeout=5" } @@ -8643,14 +8636,28 @@ curl -H 'User-Agent: python-requests/2.32.3' -H 'Accept-Encoding: gzip, deflate, - **Body:** ```json { - "code": 84, - "message": "cillum Lorem in Duis", + "code": 93, + "message": "officia consectetur nulla aliquip veniam", "data": { - "total": 78, + "total": 49, "list": [ { - "dsid": "99", - "dataRegion": "labore aliqua do", + "dsid": "96", + "dataRegion": "labore nostrud exercitation magna proident", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "9", + "dataRegion": "tempor cillum culpa", + "gasReleaseMon": null, + "gasReleaseYear": null, + "releaseGasCum": null + }, + { + "dsid": "50", + "dataRegion": "fugiat Excepteur Duis", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null diff --git a/test_reports/summary.json b/test_reports/summary.json index dfcf457..694acc3 100644 --- a/test_reports/summary.json +++ b/test_reports/summary.json @@ -1,7 +1,7 @@ { - "start_time": "2025-06-16T18:36:01.309510", - "end_time": "2025-06-16T18:36:34.476981", - "duration_seconds": "33.17", + "start_time": "2025-06-20T10:38:16.672560", + "end_time": "2025-06-20T10:38:53.355720", + "duration_seconds": "36.68", "overall_summary": { "total_endpoints_defined": 6, "endpoints_tested": 6, @@ -32,9 +32,9 @@ "endpoint_id": "POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}", "endpoint_name": "数据推送接口", "overall_status": "失败", - "duration_seconds": 7.257377, - "start_time": "2025-06-16T18:36:01.310316", - "end_time": "2025-06-16T18:36:08.567693", + "duration_seconds": 4.707823, + "start_time": "2025-06-20T10:38:16.674466", + "end_time": "2025-06-20T10:38:21.382289", "executed_test_cases": [ { "test_case_id": "TC-HEADER-001", @@ -42,8 +42,8 @@ "test_case_severity": "严重", "status": "失败", "message": "缺少必需的请求头 X-Tenant-ID;缺少必需的请求头 X-Data-Domain", - "duration_seconds": 0.06684508299804293, - "timestamp": "2025-06-16T18:36:01.377312", + "duration_seconds": 0.5419976249686442, + "timestamp": "2025-06-20T10:38:17.216787", "validation_points": [ { "header": "X-Tenant-ID", @@ -67,8 +67,8 @@ "test_case_severity": "严重", "status": "通过", "message": "响应状态码为 200,符合预期 200。", - "duration_seconds": 0.01847591600380838, - "timestamp": "2025-06-16T18:36:01.395838", + "duration_seconds": 0.05843891599215567, + "timestamp": "2025-06-20T10:38:17.275470", "validation_points": [ { "passed": true, @@ -82,8 +82,8 @@ "test_case_severity": "高", "status": "通过", "message": "未在响应中找到需要检查的敏感字段。", - "duration_seconds": 0.01772758297738619, - "timestamp": "2025-06-16T18:36:01.413624", + "duration_seconds": 0.06720204197335988, + "timestamp": "2025-06-20T10:38:17.342818", "validation_points": [ { "passed": true, @@ -96,13 +96,13 @@ "test_case_name": "LLM合规性综合检查", "test_case_severity": "中", "status": "通过", - "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了POST方法,并且根据其路径和操作内容(/message/push),可以合理推测该请求用于创建或推送消息,符合POST方法的语义。", - "duration_seconds": 6.797792417026358, - "timestamp": "2025-06-16T18:36:08.211372", + "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了POST方法,且根据URL和路径参数判断,该操作涉及创建或推送消息(/message/push),符合POST方法的语义。", + "duration_seconds": 3.5183457499952056, + "timestamp": "2025-06-20T10:38:20.861385", "validation_points": [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", - "llm_reason": "当前API调用使用了POST方法,并且根据其路径和操作内容(/message/push),可以合理推测该请求用于创建或推送消息,符合POST方法的语义。" + "llm_reason": "当前API调用使用了POST方法,且根据URL和路径参数判断,该操作涉及创建或推送消息(/message/push),符合POST方法的语义。" } ] }, @@ -112,8 +112,8 @@ "test_case_severity": "高", "status": "通过", "message": "模块名 'dms' 格式正确 (全小写/数字/中划线)。;规范中未找到响应码 200 或其类别(2XX, default)的匹配定义,跳过空数组与null的检查。", - "duration_seconds": 0.05396729102358222, - "timestamp": "2025-06-16T18:36:08.265750", + "duration_seconds": 0.09073545801220462, + "timestamp": "2025-06-20T10:38:20.952383", "validation_points": [ { "passed": true, @@ -131,8 +131,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过检查:API不符合分页参数检查的准入规则(需包含'查询'/'列表'等关键词,且不包含'详情'等关键词)", - "duration_seconds": 0.027711791975889355, - "timestamp": "2025-06-16T18:36:08.293797", + "duration_seconds": 0.03268224996281788, + "timestamp": "2025-06-20T10:38:20.985193", "validation_points": [ { "path": "/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}", @@ -149,8 +149,8 @@ "test_case_severity": "中", "status": "通过", "message": "路径 '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 符合资源名词命名规范。", - "duration_seconds": 0.02546445801272057, - "timestamp": "2025-06-16T18:36:08.319702", + "duration_seconds": 0.03199870901880786, + "timestamp": "2025-06-20T10:38:21.017734", "validation_points": [ { "passed": true, @@ -164,8 +164,8 @@ "test_case_severity": "高", "status": "通过", "message": "字段'code'在schema中未标记为必填(required);字段'message'在schema中未标记为必填(required);字段'data'在schema中未标记为必填(required);响应schema符合标准格式: {'code':int or number or string, 'message':string, 'data': any}", - "duration_seconds": 0.025878000014927238, - "timestamp": "2025-06-16T18:36:08.347286", + "duration_seconds": 0.04492170800222084, + "timestamp": "2025-06-20T10:38:21.063043", "validation_points": [ { "status_code": "201", @@ -190,8 +190,8 @@ "test_case_severity": "严重", "status": "通过", "message": "Schema验证步骤完成(未发现问题,或schema不适用/未为此响应定义)。", - "duration_seconds": 0.022758959006750956, - "timestamp": "2025-06-16T18:36:08.370365", + "duration_seconds": 0.036558291991241276, + "timestamp": "2025-06-20T10:38:21.099819", "validation_points": [ { "passed": true, @@ -204,13 +204,13 @@ "test_case_name": "时间字段ISO 8601格式检查", "test_case_severity": "中", "status": "通过", - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。", - "duration_seconds": 0.018434708006680012, - "timestamp": "2025-06-16T18:36:08.389115", + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。", + "duration_seconds": 0.03229362500132993, + "timestamp": "2025-06-20T10:38:21.132401", "validation_points": [ { "passed": true, - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。" + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。" } ] }, @@ -220,8 +220,8 @@ "test_case_severity": "中", "status": "通过", "message": "API路径 '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 正确以'/api/'开头;API路径 '/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 包含版本标识: 'v1'", - "duration_seconds": 0.03725341701647267, - "timestamp": "2025-06-16T18:36:08.426735", + "duration_seconds": 0.03511912497924641, + "timestamp": "2025-06-20T10:38:21.167789", "validation_points": [ { "full_path": "/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}" @@ -239,8 +239,8 @@ "test_case_severity": "严重", "status": "失败", "message": "API通过HTTP (http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/message/push/example_schema/example_version) 响应了成功的状态码 200,这违反了HTTPS强制策略。", - "duration_seconds": 0.025803625001572073, - "timestamp": "2025-06-16T18:36:08.452786", + "duration_seconds": 0.03721991699421778, + "timestamp": "2025-06-20T10:38:21.205590", "validation_points": [ { "status_code": 200 @@ -253,8 +253,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:在查询参数中未找到合适的字段来测试类型不匹配。", - "duration_seconds": 0.01808837498538196, - "timestamp": "2025-06-16T18:36:08.471161", + "duration_seconds": 0.029320540954358876, + "timestamp": "2025-06-20T10:38:21.235016", "validation_points": [ { "passed": true, @@ -268,8 +268,8 @@ "test_case_severity": "中", "status": "失败", "message": "当请求体字段 'isSearchCount' 类型不匹配时, 业务错误码应为 -1,但实际为 4006。", - "duration_seconds": 0.017899917002068833, - "timestamp": "2025-06-16T18:36:08.489259", + "duration_seconds": 0.026112249994184822, + "timestamp": "2025-06-20T10:38:21.261221", "validation_points": [ { "expected_code": -1, @@ -300,8 +300,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确范围限制的数值字段。", - "duration_seconds": 0.01862262500799261, - "timestamp": "2025-06-16T18:36:08.508263", + "duration_seconds": 0.02648395800497383, + "timestamp": "2025-06-20T10:38:21.287809", "validation_points": [ { "passed": true, @@ -314,9 +314,9 @@ "test_case_name": "Error Code 4006 - Invalid Enum Value Validation", "test_case_severity": "中", "status": "失败", - "message": "当 body 字段 'logic' 值为 'invalid_enum_kaj20t' (合法值为: ['AND', 'OR']) 时, 业务错误码应为 -1,但实际为 4006。", - "duration_seconds": 0.01926466598524712, - "timestamp": "2025-06-16T18:36:08.527801", + "message": "当 body 字段 'logic' 值为 'invalid_enum_8j5lv9' (合法值为: ['AND', 'OR']) 时, 业务错误码应为 -1,但实际为 4006。", + "duration_seconds": 0.03137775004142895, + "timestamp": "2025-06-20T10:38:21.319286", "validation_points": [ { "expected_code": -1, @@ -347,8 +347,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填请求体字段用于移除测试。", - "duration_seconds": 0.021952166978735477, - "timestamp": "2025-06-16T18:36:08.549947", + "duration_seconds": 0.03236400004243478, + "timestamp": "2025-06-20T10:38:21.352075", "validation_points": [ { "passed": true, @@ -362,8 +362,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填查询参数用于移除测试。", - "duration_seconds": 0.017345166008453816, - "timestamp": "2025-06-16T18:36:08.567585", + "duration_seconds": 0.029946250026114285, + "timestamp": "2025-06-20T10:38:21.382159", "validation_points": [ { "passed": true, @@ -377,9 +377,9 @@ "endpoint_id": "POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}", "endpoint_name": "地质单元列表查询", "overall_status": "失败", - "duration_seconds": 4.4596, - "start_time": "2025-06-16T18:36:08.567814", - "end_time": "2025-06-16T18:36:13.027414", + "duration_seconds": 7.438804, + "start_time": "2025-06-20T10:38:21.382422", + "end_time": "2025-06-20T10:38:28.821226", "executed_test_cases": [ { "test_case_id": "TC-HEADER-001", @@ -387,8 +387,8 @@ "test_case_severity": "严重", "status": "失败", "message": "缺少必需的请求头 X-Tenant-ID;缺少必需的请求头 X-Data-Domain", - "duration_seconds": 0.01622337498702109, - "timestamp": "2025-06-16T18:36:08.584597", + "duration_seconds": 0.056114999984856695, + "timestamp": "2025-06-20T10:38:21.439172", "validation_points": [ { "header": "X-Tenant-ID", @@ -412,8 +412,8 @@ "test_case_severity": "严重", "status": "通过", "message": "响应状态码为 200,符合预期 200。", - "duration_seconds": 0.015652749978471547, - "timestamp": "2025-06-16T18:36:08.600450", + "duration_seconds": 0.027234709006734192, + "timestamp": "2025-06-20T10:38:21.466525", "validation_points": [ { "passed": true, @@ -427,8 +427,8 @@ "test_case_severity": "高", "status": "通过", "message": "未在响应中找到需要检查的敏感字段。", - "duration_seconds": 0.017506042000604793, - "timestamp": "2025-06-16T18:36:08.618195", + "duration_seconds": 0.043664125027135015, + "timestamp": "2025-06-20T10:38:21.510335", "validation_points": [ { "passed": true, @@ -441,13 +441,13 @@ "test_case_name": "LLM合规性综合检查", "test_case_severity": "中", "status": "通过", - "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。", - "duration_seconds": 4.0819375419814605, - "timestamp": "2025-06-16T18:36:12.700285", + "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。", + "duration_seconds": 6.848316542047542, + "timestamp": "2025-06-20T10:38:28.358970", "validation_points": [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", - "llm_reason": "当前API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。" + "llm_reason": "API调用使用了POST方法,并且根据其路径和请求体内容判断,该操作符合创建资源的语义,因此符合标准。" } ] }, @@ -457,8 +457,8 @@ "test_case_severity": "高", "status": "通过", "message": "模块名 'dms' 格式正确 (全小写/数字/中划线)。;规范中未找到响应码 200 或其类别(2XX, default)的匹配定义,跳过空数组与null的检查。", - "duration_seconds": 0.05580279100104235, - "timestamp": "2025-06-16T18:36:12.756541", + "duration_seconds": 0.049271332973148674, + "timestamp": "2025-06-20T10:38:28.408760", "validation_points": [ { "passed": true, @@ -476,8 +476,8 @@ "test_case_severity": "中", "status": "通过", "message": "API请求包含所有标准分页参数:pageNo、pageSize和isSearchCount", - "duration_seconds": 0.026100333023350686, - "timestamp": "2025-06-16T18:36:12.782811", + "duration_seconds": 0.028598375036381185, + "timestamp": "2025-06-20T10:38:28.437526", "validation_points": [ { "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}", @@ -491,8 +491,8 @@ "test_case_severity": "中", "status": "通过", "message": "路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 符合资源名词命名规范。", - "duration_seconds": 0.021999207994667813, - "timestamp": "2025-06-16T18:36:12.805204", + "duration_seconds": 0.02779416600242257, + "timestamp": "2025-06-20T10:38:28.465610", "validation_points": [ { "passed": true, @@ -506,8 +506,8 @@ "test_case_severity": "高", "status": "通过", "message": "字段'code'在schema中未标记为必填(required);字段'message'在schema中未标记为必填(required);字段'data'在schema中未标记为必填(required);响应schema符合标准格式: {'code':int or number or string, 'message':string, 'data': any}", - "duration_seconds": 0.021765709010651335, - "timestamp": "2025-06-16T18:36:12.827335", + "duration_seconds": 0.03907008399255574, + "timestamp": "2025-06-20T10:38:28.504956", "validation_points": [ { "status_code": "201", @@ -532,8 +532,8 @@ "test_case_severity": "严重", "status": "通过", "message": "Schema验证步骤完成(未发现问题,或schema不适用/未为此响应定义)。", - "duration_seconds": 0.020259792014257982, - "timestamp": "2025-06-16T18:36:12.847999", + "duration_seconds": 0.036994958005379885, + "timestamp": "2025-06-20T10:38:28.542268", "validation_points": [ { "passed": true, @@ -546,13 +546,13 @@ "test_case_name": "时间字段ISO 8601格式检查", "test_case_severity": "中", "status": "通过", - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。", - "duration_seconds": 0.02293279199511744, - "timestamp": "2025-06-16T18:36:12.871164", + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。", + "duration_seconds": 0.03333795798243955, + "timestamp": "2025-06-20T10:38:28.575740", "validation_points": [ { "passed": true, - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。" + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。" } ] }, @@ -562,8 +562,8 @@ "test_case_severity": "中", "status": "通过", "message": "API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 正确以'/api/'开头;API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 包含版本标识: 'v1'", - "duration_seconds": 0.023007125011645257, - "timestamp": "2025-06-16T18:36:12.894441", + "duration_seconds": 0.02890299999853596, + "timestamp": "2025-06-20T10:38:28.604925", "validation_points": [ { "full_path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}" @@ -581,8 +581,8 @@ "test_case_severity": "严重", "status": "失败", "message": "API通过HTTP (http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0) 响应了成功的状态码 200,这违反了HTTPS强制策略。", - "duration_seconds": 0.0187279160018079, - "timestamp": "2025-06-16T18:36:12.913647", + "duration_seconds": 0.02864774997578934, + "timestamp": "2025-06-20T10:38:28.634051", "validation_points": [ { "status_code": 200 @@ -594,29 +594,29 @@ "test_case_name": "Error Code -1 - Query Parameter Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当查询参数 'pageNo' (路径: 'pageNo') 类型不匹配时, 业务错误码应为 -1,但实际为 4。", - "duration_seconds": 0.017661207995843142, - "timestamp": "2025-06-16T18:36:12.931572", + "message": "当查询参数 'pageNo' (路径: 'pageNo') 类型不匹配时, 业务错误码应为 -1,但实际为 40。", + "duration_seconds": 0.036543624999467283, + "timestamp": "2025-06-20T10:38:28.670733", "validation_points": [ { "expected_code": -1, - "actual_code": 4, + "actual_code": 40, "response_body": { - "code": 4, - "message": "ipsum irure est Ut laboris", + "code": 40, + "message": "id non", "data": { - "total": 69, + "total": 3, "list": [ { - "dsid": "35", - "dataRegion": "labore sed", + "dsid": "15", + "dataRegion": "velit qui id nulla", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "72", - "dataRegion": "id Ut elit culpa consequat", + "dsid": "39", + "dataRegion": "ad reprehenderit", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -632,36 +632,29 @@ "test_case_name": "Error Code -1 - Request Body Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当请求体字段 'isSearchCount' 类型不匹配时, 业务错误码应为 -1,但实际为 84。", - "duration_seconds": 0.01870650000637397, - "timestamp": "2025-06-16T18:36:12.950532", + "message": "当请求体字段 'isSearchCount' 类型不匹配时, 业务错误码应为 -1,但实际为 72。", + "duration_seconds": 0.03071037499466911, + "timestamp": "2025-06-20T10:38:28.701723", "validation_points": [ { "expected_code": -1, - "actual_code": 84, + "actual_code": 72, "response_body": { - "code": 84, - "message": "ad", + "code": 72, + "message": "ut dolor", "data": { - "total": 71, + "total": 100, "list": [ { - "dsid": "68", - "dataRegion": "consectetur magna", + "dsid": "23", + "dataRegion": "tempor Duis", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "60", - "dataRegion": "Excepteur id eu consequat", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "98", - "dataRegion": "sint Excepteur eiusmod commodo sed", + "dsid": "49", + "dataRegion": "dolore sed cupidatat", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -677,22 +670,22 @@ "test_case_name": "Error Code -1 - Number Value Out of Range Validation", "test_case_severity": "中", "status": "失败", - "message": "当 query 字段 'pageNo' 值为 0.0 (超出范围: min=1.0, max=None) 时, 业务错误码应为 -1,但实际为 81。", - "duration_seconds": 0.017425708996597677, - "timestamp": "2025-06-16T18:36:12.968208", + "message": "当 query 字段 'pageNo' 值为 0.0 (超出范围: min=1.0, max=None) 时, 业务错误码应为 -1,但实际为 94。", + "duration_seconds": 0.028056916024070233, + "timestamp": "2025-06-20T10:38:28.730060", "validation_points": [ { "expected_code": -1, - "actual_code": 81, + "actual_code": 94, "response_body": { - "code": 81, - "message": "tempor elit dolor aliqua ad", + "code": 94, + "message": "culpa est tempor eu ipsum", "data": { - "total": 87, + "total": 73, "list": [ { - "dsid": "46", - "dataRegion": "do quis aliquip aliqua anim", + "dsid": "31", + "dataRegion": "non anim", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -708,36 +701,29 @@ "test_case_name": "Error Code 4006 - Invalid Enum Value Validation", "test_case_severity": "中", "status": "失败", - "message": "当 body 字段 'logic' 值为 'invalid_enum_9ssyno' (合法值为: ['AND', 'OR']) 时, 业务错误码应为 -1,但实际为 100。", - "duration_seconds": 0.0193637500051409, - "timestamp": "2025-06-16T18:36:12.987815", + "message": "当 body 字段 'logic' 值为 'invalid_enum_wf2e1t' (合法值为: ['AND', 'OR']) 时, 业务错误码应为 -1,但实际为 59。", + "duration_seconds": 0.026858832978177816, + "timestamp": "2025-06-20T10:38:28.757132", "validation_points": [ { "expected_code": -1, - "actual_code": 100, + "actual_code": 59, "response_body": { - "code": 100, - "message": "sint elit tempor", + "code": 59, + "message": "anim occaecat", "data": { - "total": 75, + "total": 52, "list": [ { - "dsid": "85", - "dataRegion": "sint est Ut sunt", + "dsid": "82", + "dataRegion": "voluptate aliquip elit minim pariatur", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null }, { - "dsid": "52", - "dataRegion": "pariatur", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "11", - "dataRegion": "in", + "dsid": "12", + "dataRegion": "esse nostrud velit in", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -754,8 +740,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填请求体字段用于移除测试。", - "duration_seconds": 0.021358290978241712, - "timestamp": "2025-06-16T18:36:13.009635", + "duration_seconds": 0.027073665987700224, + "timestamp": "2025-06-20T10:38:28.784505", "validation_points": [ { "passed": true, @@ -769,8 +755,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填查询参数用于移除测试。", - "duration_seconds": 0.01754879200598225, - "timestamp": "2025-06-16T18:36:13.027311", + "duration_seconds": 0.03639554203255102, + "timestamp": "2025-06-20T10:38:28.821099", "validation_points": [ { "passed": true, @@ -784,9 +770,9 @@ "endpoint_id": "PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit", "endpoint_name": "地质单元数据修改", "overall_status": "失败", - "duration_seconds": 4.557834, - "start_time": "2025-06-16T18:36:13.027503", - "end_time": "2025-06-16T18:36:17.585337", + "duration_seconds": 5.377887, + "start_time": "2025-06-20T10:38:28.821352", + "end_time": "2025-06-20T10:38:34.199239", "executed_test_cases": [ { "test_case_id": "TC-HEADER-001", @@ -794,8 +780,8 @@ "test_case_severity": "严重", "status": "失败", "message": "缺少必需的请求头 X-Tenant-ID;缺少必需的请求头 X-Data-Domain", - "duration_seconds": 0.017646041000261903, - "timestamp": "2025-06-16T18:36:13.045602", + "duration_seconds": 0.041237249970436096, + "timestamp": "2025-06-20T10:38:28.863143", "validation_points": [ { "header": "X-Tenant-ID", @@ -819,8 +805,8 @@ "test_case_severity": "严重", "status": "通过", "message": "响应状态码为 200,符合预期 200。", - "duration_seconds": 0.01583475002553314, - "timestamp": "2025-06-16T18:36:13.061673", + "duration_seconds": 0.027748083986807615, + "timestamp": "2025-06-20T10:38:28.891000", "validation_points": [ { "passed": true, @@ -834,8 +820,8 @@ "test_case_severity": "高", "status": "通过", "message": "未在响应中找到需要检查的敏感字段。", - "duration_seconds": 0.016633332998026162, - "timestamp": "2025-06-16T18:36:13.078594", + "duration_seconds": 0.03254245803691447, + "timestamp": "2025-06-20T10:38:28.923672", "validation_points": [ { "passed": true, @@ -848,13 +834,13 @@ "test_case_name": "LLM合规性综合检查", "test_case_severity": "中", "status": "通过", - "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了PUT方法,并且根据其路径和请求体内容判断,该操作符合PUT方法的语义,即用于更新资源。", - "duration_seconds": 4.204945000004955, - "timestamp": "2025-06-16T18:36:17.283844", + "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了PUT方法,并且根据其路径和操作内容(更新cd_geo_unit资源),符合PUT方法用于更新的语义。", + "duration_seconds": 4.864971250004601, + "timestamp": "2025-06-20T10:38:33.788910", "validation_points": [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", - "llm_reason": "当前API调用使用了PUT方法,并且根据其路径和请求体内容判断,该操作符合PUT方法的语义,即用于更新资源。" + "llm_reason": "当前API调用使用了PUT方法,并且根据其路径和操作内容(更新cd_geo_unit资源),符合PUT方法用于更新的语义。" } ] }, @@ -864,8 +850,8 @@ "test_case_severity": "高", "status": "通过", "message": "模块名 'dms' 格式正确 (全小写/数字/中划线)。", - "duration_seconds": 0.04935187500086613, - "timestamp": "2025-06-16T18:36:17.333370", + "duration_seconds": 0.0591976250289008, + "timestamp": "2025-06-20T10:38:33.848265", "validation_points": [ { "passed": true, @@ -879,8 +865,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过检查:API不符合分页参数检查的准入规则(需包含'查询'/'列表'等关键词,且不包含'详情'等关键词)", - "duration_seconds": 0.025501291995169595, - "timestamp": "2025-06-16T18:36:17.359151", + "duration_seconds": 0.03255012503359467, + "timestamp": "2025-06-20T10:38:33.880897", "validation_points": [ { "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit", @@ -897,8 +883,8 @@ "test_case_severity": "中", "status": "通过", "message": "路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 符合资源名词命名规范。", - "duration_seconds": 0.020384417002787814, - "timestamp": "2025-06-16T18:36:17.379905", + "duration_seconds": 0.027814333036076277, + "timestamp": "2025-06-20T10:38:33.908940", "validation_points": [ { "passed": true, @@ -912,8 +898,8 @@ "test_case_severity": "高", "status": "通过", "message": "字段'code'在schema中未标记为必填(required);字段'message'在schema中未标记为必填(required);字段'data'在schema中未标记为必填(required);响应schema符合标准格式: {'code':int or number or string, 'message':string, 'data': any}", - "duration_seconds": 0.019491333980113268, - "timestamp": "2025-06-16T18:36:17.399738", + "duration_seconds": 0.025110665999818593, + "timestamp": "2025-06-20T10:38:33.934226", "validation_points": [ { "status_code": "200", @@ -938,8 +924,8 @@ "test_case_severity": "严重", "status": "通过", "message": "针对 PUT http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit (状态码 200) 的响应体 conforms to the JSON schema.", - "duration_seconds": 0.028269542002817616, - "timestamp": "2025-06-16T18:36:17.428315", + "duration_seconds": 0.026640458032488823, + "timestamp": "2025-06-20T10:38:33.961002", "validation_points": [ { "passed": true, @@ -952,13 +938,13 @@ "test_case_name": "时间字段ISO 8601格式检查", "test_case_severity": "中", "status": "通过", - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。", - "duration_seconds": 0.016361249989131466, - "timestamp": "2025-06-16T18:36:17.444907", + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。", + "duration_seconds": 0.03917824995005503, + "timestamp": "2025-06-20T10:38:34.000308", "validation_points": [ { "passed": true, - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。" + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。" } ] }, @@ -968,8 +954,8 @@ "test_case_severity": "中", "status": "通过", "message": "API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 正确以'/api/'开头;API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 包含版本标识: 'v1'", - "duration_seconds": 0.016024458018364385, - "timestamp": "2025-06-16T18:36:17.461124", + "duration_seconds": 0.03242937498725951, + "timestamp": "2025-06-20T10:38:34.032932", "validation_points": [ { "full_path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit" @@ -987,8 +973,8 @@ "test_case_severity": "严重", "status": "失败", "message": "API通过HTTP (http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit) 响应了成功的状态码 200,这违反了HTTPS强制策略。", - "duration_seconds": 0.01584070798708126, - "timestamp": "2025-06-16T18:36:17.477978", + "duration_seconds": 0.022750500007532537, + "timestamp": "2025-06-20T10:38:34.055860", "validation_points": [ { "status_code": 200 @@ -1000,16 +986,16 @@ "test_case_name": "Error Code -1 - Query Parameter Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当查询参数 'id' (路径: 'id') 类型不匹配时, 业务错误码应为 -1,但实际为 8。", - "duration_seconds": 0.020242541999323294, - "timestamp": "2025-06-16T18:36:17.498474", + "message": "当查询参数 'id' (路径: 'id') 类型不匹配时, 业务错误码应为 -1,但实际为 49。", + "duration_seconds": 0.024243334017228335, + "timestamp": "2025-06-20T10:38:34.080199", "validation_points": [ { "expected_code": -1, - "actual_code": 8, + "actual_code": 49, "response_body": { - "code": 8, - "message": "Lorem ullamco", + "code": 49, + "message": "esse eiusmod", "data": false } } @@ -1020,17 +1006,17 @@ "test_case_name": "Error Code -1 - Request Body Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当请求体字段 'id' 类型不匹配时, 业务错误码应为 -1,但实际为 2。", - "duration_seconds": 0.01615554199088365, - "timestamp": "2025-06-16T18:36:17.514792", + "message": "当请求体字段 'id' 类型不匹配时, 业务错误码应为 -1,但实际为 14。", + "duration_seconds": 0.02337008301401511, + "timestamp": "2025-06-20T10:38:34.103651", "validation_points": [ { "expected_code": -1, - "actual_code": 2, + "actual_code": 14, "response_body": { - "code": 2, - "message": "Excepteur est ex", - "data": false + "code": 14, + "message": "quis", + "data": true } } ] @@ -1041,8 +1027,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确范围限制的数值字段。", - "duration_seconds": 0.01682487499783747, - "timestamp": "2025-06-16T18:36:17.531691", + "duration_seconds": 0.026526166999246925, + "timestamp": "2025-06-20T10:38:34.130256", "validation_points": [ { "passed": true, @@ -1056,8 +1042,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确枚举值限制的字段。", - "duration_seconds": 0.0158175420074258, - "timestamp": "2025-06-16T18:36:17.547652", + "duration_seconds": 0.021649874979630113, + "timestamp": "2025-06-20T10:38:34.151998", "validation_points": [ { "passed": true, @@ -1071,8 +1057,8 @@ "test_case_severity": "高", "status": "失败", "message": "当移除必填请求体字段 'id' 时, 业务错误码应为 -1,但实际为 4003。", - "duration_seconds": 0.01464537499123253, - "timestamp": "2025-06-16T18:36:17.562605", + "duration_seconds": 0.024231999996118248, + "timestamp": "2025-06-20T10:38:34.176389", "validation_points": [ { "expected_code": -1, @@ -1088,16 +1074,16 @@ "test_case_name": "Error Code -1 - Missing Required Query Parameter Validation", "test_case_severity": "高", "status": "失败", - "message": "当移除必填查询参数 'id' 时, 业务错误码应为 -1,但实际为 92。", - "duration_seconds": 0.021994957991410047, - "timestamp": "2025-06-16T18:36:17.585078", + "message": "当移除必填查询参数 'id' 时, 业务错误码应为 -1,但实际为 48。", + "duration_seconds": 0.02258983300998807, + "timestamp": "2025-06-20T10:38:34.199111", "validation_points": [ { "expected_code": -1, - "actual_code": 92, + "actual_code": 48, "response_body": { - "code": 92, - "message": "elit amet", + "code": 48, + "message": "voluptate", "data": true } } @@ -1109,9 +1095,9 @@ "endpoint_id": "DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit", "endpoint_name": "地质单元数据删除", "overall_status": "失败", - "duration_seconds": 5.625626, - "start_time": "2025-06-16T18:36:17.585466", - "end_time": "2025-06-16T18:36:23.211092", + "duration_seconds": 6.727812, + "start_time": "2025-06-20T10:38:34.199297", + "end_time": "2025-06-20T10:38:40.927109", "executed_test_cases": [ { "test_case_id": "TC-HEADER-001", @@ -1119,8 +1105,8 @@ "test_case_severity": "严重", "status": "失败", "message": "缺少必需的请求头 X-Tenant-ID;缺少必需的请求头 X-Data-Domain", - "duration_seconds": 0.01568699997733347, - "timestamp": "2025-06-16T18:36:17.601792", + "duration_seconds": 0.0212352920207195, + "timestamp": "2025-06-20T10:38:34.220840", "validation_points": [ { "header": "X-Tenant-ID", @@ -1144,8 +1130,8 @@ "test_case_severity": "严重", "status": "通过", "message": "响应状态码为 200,符合预期 200。", - "duration_seconds": 0.015644541010260582, - "timestamp": "2025-06-16T18:36:17.617588", + "duration_seconds": 0.030489667027723044, + "timestamp": "2025-06-20T10:38:34.251402", "validation_points": [ { "passed": true, @@ -1159,8 +1145,8 @@ "test_case_severity": "高", "status": "通过", "message": "未在响应中找到需要检查的敏感字段。", - "duration_seconds": 0.016768208995927125, - "timestamp": "2025-06-16T18:36:17.634574", + "duration_seconds": 0.027502166980411857, + "timestamp": "2025-06-20T10:38:34.279049", "validation_points": [ { "passed": true, @@ -1173,13 +1159,13 @@ "test_case_name": "LLM合规性综合检查", "test_case_severity": "中", "status": "通过", - "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: API调用使用了DELETE方法,并且其路径和操作表明它正在删除资源(/cd_geo_unit),符合DELETE方法的语义。", - "duration_seconds": 5.2675957920146175, - "timestamp": "2025-06-16T18:36:22.902280", + "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: API使用了DELETE方法,并且其操作符合DELETE语义,即删除资源(/cd_geo_unit)。因此该标准通过。", + "duration_seconds": 6.2821086249896325, + "timestamp": "2025-06-20T10:38:40.561424", "validation_points": [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", - "llm_reason": "API调用使用了DELETE方法,并且其路径和操作表明它正在删除资源(/cd_geo_unit),符合DELETE方法的语义。" + "llm_reason": "API使用了DELETE方法,并且其操作符合DELETE语义,即删除资源(/cd_geo_unit)。因此该标准通过。" } ] }, @@ -1189,8 +1175,8 @@ "test_case_severity": "高", "status": "通过", "message": "模块名 'dms' 格式正确 (全小写/数字/中划线)。", - "duration_seconds": 0.057795083994278684, - "timestamp": "2025-06-16T18:36:22.960260", + "duration_seconds": 0.04058187495684251, + "timestamp": "2025-06-20T10:38:40.602098", "validation_points": [ { "passed": true, @@ -1204,8 +1190,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过检查:API不符合分页参数检查的准入规则(需包含'查询'/'列表'等关键词,且不包含'详情'等关键词)", - "duration_seconds": 0.030002083018189296, - "timestamp": "2025-06-16T18:36:22.990597", + "duration_seconds": 0.023962375009432435, + "timestamp": "2025-06-20T10:38:40.626140", "validation_points": [ { "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit", @@ -1222,8 +1208,8 @@ "test_case_severity": "中", "status": "通过", "message": "路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 符合资源名词命名规范。", - "duration_seconds": 0.0216407919942867, - "timestamp": "2025-06-16T18:36:23.012645", + "duration_seconds": 0.03262416698271409, + "timestamp": "2025-06-20T10:38:40.658944", "validation_points": [ { "passed": true, @@ -1237,8 +1223,8 @@ "test_case_severity": "高", "status": "通过", "message": "字段'code'在schema中未标记为必填(required);字段'message'在schema中未标记为必填(required);字段'data'在schema中未标记为必填(required);响应schema符合标准格式: {'code':int or number or string, 'message':string, 'data': any}", - "duration_seconds": 0.018513957998948172, - "timestamp": "2025-06-16T18:36:23.031654", + "duration_seconds": 0.03017762501258403, + "timestamp": "2025-06-20T10:38:40.689297", "validation_points": [ { "status_code": "200", @@ -1263,8 +1249,8 @@ "test_case_severity": "严重", "status": "通过", "message": "针对 DELETE http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit (状态码 200) 的响应体 conforms to the JSON schema.", - "duration_seconds": 0.019124040991300717, - "timestamp": "2025-06-16T18:36:23.051246", + "duration_seconds": 0.022072583029512316, + "timestamp": "2025-06-20T10:38:40.711512", "validation_points": [ { "passed": true, @@ -1277,13 +1263,13 @@ "test_case_name": "时间字段ISO 8601格式检查", "test_case_severity": "中", "status": "通过", - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。", - "duration_seconds": 0.017266666021896526, - "timestamp": "2025-06-16T18:36:23.068854", + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。", + "duration_seconds": 0.02416662499308586, + "timestamp": "2025-06-20T10:38:40.735773", "validation_points": [ { "passed": true, - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。" + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。" } ] }, @@ -1293,8 +1279,8 @@ "test_case_severity": "中", "status": "通过", "message": "API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 正确以'/api/'开头;API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 包含版本标识: 'v1'", - "duration_seconds": 0.02020825000363402, - "timestamp": "2025-06-16T18:36:23.089451", + "duration_seconds": 0.021162709046620876, + "timestamp": "2025-06-20T10:38:40.757073", "validation_points": [ { "full_path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit" @@ -1312,8 +1298,8 @@ "test_case_severity": "严重", "status": "失败", "message": "API通过HTTP (http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit) 响应了成功的状态码 200,这违反了HTTPS强制策略。", - "duration_seconds": 0.02089504199102521, - "timestamp": "2025-06-16T18:36:23.110735", + "duration_seconds": 0.02383991703391075, + "timestamp": "2025-06-20T10:38:40.781061", "validation_points": [ { "status_code": 200 @@ -1325,16 +1311,16 @@ "test_case_name": "Error Code -1 - Query Parameter Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当查询参数 'id' (路径: 'id') 类型不匹配时, 业务错误码应为 -1,但实际为 25。", - "duration_seconds": 0.016436334000900388, - "timestamp": "2025-06-16T18:36:23.127442", + "message": "当查询参数 'id' (路径: 'id') 类型不匹配时, 业务错误码应为 -1,但实际为 26。", + "duration_seconds": 0.02577187499264255, + "timestamp": "2025-06-20T10:38:40.806913", "validation_points": [ { "expected_code": -1, - "actual_code": 25, + "actual_code": 26, "response_body": { - "code": 25, - "message": "deserunt", + "code": 26, + "message": "laboris deserunt in commodo", "data": true } } @@ -1345,17 +1331,17 @@ "test_case_name": "Error Code -1 - Request Body Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当请求体字段 'version' 类型不匹配时, 业务错误码应为 -1,但实际为 72。", - "duration_seconds": 0.0162782910047099, - "timestamp": "2025-06-16T18:36:23.143871", + "message": "当请求体字段 'version' 类型不匹配时, 业务错误码应为 -1,但实际为 40。", + "duration_seconds": 0.028503832989372313, + "timestamp": "2025-06-20T10:38:40.835519", "validation_points": [ { "expected_code": -1, - "actual_code": 72, + "actual_code": 40, "response_body": { - "code": 72, - "message": "est", - "data": true + "code": 40, + "message": "in incididunt dolore reprehenderit", + "data": false } } ] @@ -1366,8 +1352,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确范围限制的数值字段。", - "duration_seconds": 0.015661000012187287, - "timestamp": "2025-06-16T18:36:23.159760", + "duration_seconds": 0.022478625003714114, + "timestamp": "2025-06-20T10:38:40.858090", "validation_points": [ { "passed": true, @@ -1381,8 +1367,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确枚举值限制的字段。", - "duration_seconds": 0.016171458002645522, - "timestamp": "2025-06-16T18:36:23.176214", + "duration_seconds": 0.022049166029319167, + "timestamp": "2025-06-20T10:38:40.880233", "validation_points": [ { "passed": true, @@ -1396,8 +1382,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填请求体字段用于移除测试。", - "duration_seconds": 0.018377500004135072, - "timestamp": "2025-06-16T18:36:23.194974", + "duration_seconds": 0.023871957964729518, + "timestamp": "2025-06-20T10:38:40.904268", "validation_points": [ { "passed": true, @@ -1410,16 +1396,16 @@ "test_case_name": "Error Code -1 - Missing Required Query Parameter Validation", "test_case_severity": "高", "status": "失败", - "message": "当移除必填查询参数 'id' 时, 业务错误码应为 -1,但实际为 34。", - "duration_seconds": 0.015503915987210348, - "timestamp": "2025-06-16T18:36:23.210772", + "message": "当移除必填查询参数 'id' 时, 业务错误码应为 -1,但实际为 86。", + "duration_seconds": 0.022433207952417433, + "timestamp": "2025-06-20T10:38:40.926894", "validation_points": [ { "expected_code": -1, - "actual_code": 34, + "actual_code": 86, "response_body": { - "code": 34, - "message": "laboris nisi Duis", + "code": 86, + "message": "voluptate ut esse dolore", "data": false } } @@ -1431,9 +1417,9 @@ "endpoint_id": "POST /api/dms/{dms_instance_code}/v1/cd_geo_unit", "endpoint_name": "地质单元数据添加", "overall_status": "失败", - "duration_seconds": 4.350481, - "start_time": "2025-06-16T18:36:23.211309", - "end_time": "2025-06-16T18:36:27.561790", + "duration_seconds": 6.774374, + "start_time": "2025-06-20T10:38:40.927219", + "end_time": "2025-06-20T10:38:47.701593", "executed_test_cases": [ { "test_case_id": "TC-HEADER-001", @@ -1441,8 +1427,8 @@ "test_case_severity": "严重", "status": "失败", "message": "缺少必需的请求头 X-Tenant-ID;缺少必需的请求头 X-Data-Domain", - "duration_seconds": 0.020980707980925217, - "timestamp": "2025-06-16T18:36:23.233285", + "duration_seconds": 0.026954166998621076, + "timestamp": "2025-06-20T10:38:40.954763", "validation_points": [ { "header": "X-Tenant-ID", @@ -1466,8 +1452,8 @@ "test_case_severity": "严重", "status": "通过", "message": "响应状态码为 200,符合预期 200。", - "duration_seconds": 0.015937999996822327, - "timestamp": "2025-06-16T18:36:23.249458", + "duration_seconds": 0.026489791984204203, + "timestamp": "2025-06-20T10:38:40.981434", "validation_points": [ { "passed": true, @@ -1481,8 +1467,8 @@ "test_case_severity": "高", "status": "通过", "message": "未在响应中找到需要检查的敏感字段。", - "duration_seconds": 0.01580241700867191, - "timestamp": "2025-06-16T18:36:23.265483", + "duration_seconds": 0.024440083012450486, + "timestamp": "2025-06-20T10:38:41.006184", "validation_points": [ { "passed": true, @@ -1495,13 +1481,13 @@ "test_case_name": "LLM合规性综合检查", "test_case_severity": "中", "status": "通过", - "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了POST方法,并且根据其路径和操作内容(/cd_geo_unit),可以推测该请求的目的是创建或新增数据,符合POST方法的语义。", - "duration_seconds": 4.0031539170013275, - "timestamp": "2025-06-16T18:36:27.268774", + "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了POST方法,且根据其路径和操作内容(/cd_geo_unit),可以合理推测该请求的目的是创建或新增资源,符合POST方法的语义。", + "duration_seconds": 6.051443292002659, + "timestamp": "2025-06-20T10:38:47.057981", "validation_points": [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", - "llm_reason": "当前API调用使用了POST方法,并且根据其路径和操作内容(/cd_geo_unit),可以推测该请求的目的是创建或新增数据,符合POST方法的语义。" + "llm_reason": "当前API调用使用了POST方法,且根据其路径和操作内容(/cd_geo_unit),可以合理推测该请求的目的是创建或新增资源,符合POST方法的语义。" } ] }, @@ -1511,8 +1497,8 @@ "test_case_severity": "高", "status": "通过", "message": "模块名 'dms' 格式正确 (全小写/数字/中划线)。;规范中未找到响应码 200 或其类别(2XX, default)的匹配定义,跳过空数组与null的检查。", - "duration_seconds": 0.05685395799810067, - "timestamp": "2025-06-16T18:36:27.326036", + "duration_seconds": 0.041716374980751425, + "timestamp": "2025-06-20T10:38:47.099974", "validation_points": [ { "passed": true, @@ -1530,8 +1516,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过检查:API不符合分页参数检查的准入规则(需包含'查询'/'列表'等关键词,且不包含'详情'等关键词)", - "duration_seconds": 0.02416495798388496, - "timestamp": "2025-06-16T18:36:27.350382", + "duration_seconds": 0.05762145802145824, + "timestamp": "2025-06-20T10:38:47.157748", "validation_points": [ { "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit", @@ -1548,8 +1534,8 @@ "test_case_severity": "中", "status": "通过", "message": "路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 符合资源名词命名规范。", - "duration_seconds": 0.023116374999517575, - "timestamp": "2025-06-16T18:36:27.373643", + "duration_seconds": 0.04528516699792817, + "timestamp": "2025-06-20T10:38:47.203335", "validation_points": [ { "passed": true, @@ -1563,8 +1549,8 @@ "test_case_severity": "高", "status": "通过", "message": "字段'code'在schema中未标记为必填(required);字段'message'在schema中未标记为必填(required);字段'data'在schema中未标记为必填(required);响应schema符合标准格式: {'code':int or number or string, 'message':string, 'data': any}", - "duration_seconds": 0.01713154200115241, - "timestamp": "2025-06-16T18:36:27.390902", + "duration_seconds": 0.04071241698693484, + "timestamp": "2025-06-20T10:38:47.244308", "validation_points": [ { "status_code": "201", @@ -1589,8 +1575,8 @@ "test_case_severity": "严重", "status": "通过", "message": "Schema验证步骤完成(未发现问题,或schema不适用/未为此响应定义)。", - "duration_seconds": 0.016177625017007813, - "timestamp": "2025-06-16T18:36:27.407193", + "duration_seconds": 0.03822166699683294, + "timestamp": "2025-06-20T10:38:47.282788", "validation_points": [ { "passed": true, @@ -1603,13 +1589,13 @@ "test_case_name": "时间字段ISO 8601格式检查", "test_case_severity": "中", "status": "通过", - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。", - "duration_seconds": 0.02225579199148342, - "timestamp": "2025-06-16T18:36:27.429508", + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。", + "duration_seconds": 0.07827374996850267, + "timestamp": "2025-06-20T10:38:47.361388", "validation_points": [ { "passed": true, - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。" + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。" } ] }, @@ -1619,8 +1605,8 @@ "test_case_severity": "中", "status": "通过", "message": "API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 正确以'/api/'开头;API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit' 包含版本标识: 'v1'", - "duration_seconds": 0.01741441700141877, - "timestamp": "2025-06-16T18:36:27.447044", + "duration_seconds": 0.06431558396434411, + "timestamp": "2025-06-20T10:38:47.426017", "validation_points": [ { "full_path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit" @@ -1638,8 +1624,8 @@ "test_case_severity": "严重", "status": "失败", "message": "API通过HTTP (http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit) 响应了成功的状态码 200,这违反了HTTPS强制策略。", - "duration_seconds": 0.015980541007593274, - "timestamp": "2025-06-16T18:36:27.463160", + "duration_seconds": 0.06295849999878556, + "timestamp": "2025-06-20T10:38:47.489347", "validation_points": [ { "status_code": 200 @@ -1652,8 +1638,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:在查询参数中未找到合适的字段来测试类型不匹配。", - "duration_seconds": 0.01703304098919034, - "timestamp": "2025-06-16T18:36:27.480246", + "duration_seconds": 0.04038804100127891, + "timestamp": "2025-06-20T10:38:47.529931", "validation_points": [ { "passed": true, @@ -1666,16 +1652,16 @@ "test_case_name": "Error Code -1 - Request Body Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当请求体字段 'version' 类型不匹配时, 业务错误码应为 -1,但实际为 62。", - "duration_seconds": 0.018939708010293543, - "timestamp": "2025-06-16T18:36:27.499235", + "message": "当请求体字段 'version' 类型不匹配时, 业务错误码应为 -1,但实际为 13。", + "duration_seconds": 0.04391466605011374, + "timestamp": "2025-06-20T10:38:47.573976", "validation_points": [ { "expected_code": -1, - "actual_code": 62, + "actual_code": 13, "response_body": { - "code": 62, - "message": "aliqua culpa anim", + "code": 13, + "message": "ad est laboris ut", "data": true } } @@ -1687,8 +1673,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确范围限制的数值字段。", - "duration_seconds": 0.01554949997807853, - "timestamp": "2025-06-16T18:36:27.514844", + "duration_seconds": 0.05720537499291822, + "timestamp": "2025-06-20T10:38:47.631307", "validation_points": [ { "passed": true, @@ -1702,8 +1688,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确枚举值限制的字段。", - "duration_seconds": 0.019034917000681162, - "timestamp": "2025-06-16T18:36:27.533933", + "duration_seconds": 0.025229415972717106, + "timestamp": "2025-06-20T10:38:47.656655", "validation_points": [ { "passed": true, @@ -1716,17 +1702,17 @@ "test_case_name": "Error Code -1 - Missing Required Request Body Field Validation", "test_case_severity": "高", "status": "失败", - "message": "当移除必填请求体字段 'data.0.bsflag' 时, 业务错误码应为 -1,但实际为 59。", - "duration_seconds": 0.014145166001981124, - "timestamp": "2025-06-16T18:36:27.548195", + "message": "当移除必填请求体字段 'data.0.bsflag' 时, 业务错误码应为 -1,但实际为 26。", + "duration_seconds": 0.02299600001424551, + "timestamp": "2025-06-20T10:38:47.679789", "validation_points": [ { "expected_code": -1, - "actual_code": 59, + "actual_code": 26, "response_body": { - "code": 59, - "message": "ea enim aliquip magna", - "data": false + "code": 26, + "message": "occaecat do", + "data": true } } ] @@ -1737,8 +1723,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填查询参数用于移除测试。", - "duration_seconds": 0.013445082993712276, - "timestamp": "2025-06-16T18:36:27.561753", + "duration_seconds": 0.021551040990743786, + "timestamp": "2025-06-20T10:38:47.701513", "validation_points": [ { "passed": true, @@ -1752,9 +1738,9 @@ "endpoint_id": "GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}", "endpoint_name": "地质单元查询详情", "overall_status": "失败", - "duration_seconds": 6.882019, - "start_time": "2025-06-16T18:36:27.561822", - "end_time": "2025-06-16T18:36:34.443841", + "duration_seconds": 5.594781, + "start_time": "2025-06-20T10:38:47.701657", + "end_time": "2025-06-20T10:38:53.296438", "executed_test_cases": [ { "test_case_id": "TC-HEADER-001", @@ -1762,8 +1748,8 @@ "test_case_severity": "严重", "status": "失败", "message": "缺少必需的请求头 X-Tenant-ID;缺少必需的请求头 X-Data-Domain", - "duration_seconds": 0.018656250002095476, - "timestamp": "2025-06-16T18:36:27.580649", + "duration_seconds": 0.022210875002201647, + "timestamp": "2025-06-20T10:38:47.724177", "validation_points": [ { "header": "X-Tenant-ID", @@ -1787,8 +1773,8 @@ "test_case_severity": "严重", "status": "通过", "message": "响应状态码为 200,符合预期 200。", - "duration_seconds": 0.015092874993570149, - "timestamp": "2025-06-16T18:36:27.595786", + "duration_seconds": 0.026287290966138244, + "timestamp": "2025-06-20T10:38:47.750536", "validation_points": [ { "passed": true, @@ -1802,8 +1788,8 @@ "test_case_severity": "高", "status": "通过", "message": "未在响应中找到需要检查的敏感字段。", - "duration_seconds": 0.014777625008719042, - "timestamp": "2025-06-16T18:36:27.610626", + "duration_seconds": 0.030695665976963937, + "timestamp": "2025-06-20T10:38:47.781324", "validation_points": [ { "passed": true, @@ -1816,13 +1802,13 @@ "test_case_name": "LLM合规性综合检查", "test_case_severity": "中", "status": "通过", - "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了GET方法,并且其路径和参数表明它用于检索数据,符合标准。", - "duration_seconds": 6.504015500016976, - "timestamp": "2025-06-16T18:36:34.114578", + "message": "[API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除] 通过: 当前API调用使用了GET方法,并且其路径和参数表明它正在检索特定id(example_id)的数据,符合GET方法的用途。", + "duration_seconds": 5.105087374977302, + "timestamp": "2025-06-20T10:38:52.886647", "validation_points": [ { "criterion": "API应该使用正确的HTTP方法:GET用于检索,POST用于创建,PUT用于更新,DELETE用于删除", - "llm_reason": "当前API调用使用了GET方法,并且其路径和参数表明它用于检索数据,符合标准。" + "llm_reason": "当前API调用使用了GET方法,并且其路径和参数表明它正在检索特定id(example_id)的数据,符合GET方法的用途。" } ] }, @@ -1832,8 +1818,8 @@ "test_case_severity": "高", "status": "通过", "message": "模块名 'dms' 格式正确 (全小写/数字/中划线)。", - "duration_seconds": 0.03994566699839197, - "timestamp": "2025-06-16T18:36:34.154602", + "duration_seconds": 0.04652762500336394, + "timestamp": "2025-06-20T10:38:52.933604", "validation_points": [ { "passed": true, @@ -1847,8 +1833,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过检查:API不符合分页参数检查的准入规则(需包含'查询'/'列表'等关键词,且不包含'详情'等关键词)", - "duration_seconds": 0.023586416005855426, - "timestamp": "2025-06-16T18:36:34.178283", + "duration_seconds": 0.026140625006519258, + "timestamp": "2025-06-20T10:38:52.959982", "validation_points": [ { "path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}", @@ -1865,8 +1851,8 @@ "test_case_severity": "中", "status": "通过", "message": "路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 符合资源名词命名规范。", - "duration_seconds": 0.023186666978290305, - "timestamp": "2025-06-16T18:36:34.201599", + "duration_seconds": 0.02623962500365451, + "timestamp": "2025-06-20T10:38:52.986735", "validation_points": [ { "passed": true, @@ -1880,8 +1866,8 @@ "test_case_severity": "高", "status": "通过", "message": "字段'code'在schema中未标记为必填(required);字段'message'在schema中未标记为必填(required);字段'data'在schema中未标记为必填(required);响应schema符合标准格式: {'code':int or number or string, 'message':string, 'data': any}", - "duration_seconds": 0.01959775001159869, - "timestamp": "2025-06-16T18:36:34.221356", + "duration_seconds": 0.029397084028460085, + "timestamp": "2025-06-20T10:38:53.016450", "validation_points": [ { "status_code": "200", @@ -1906,8 +1892,8 @@ "test_case_severity": "严重", "status": "通过", "message": "针对 GET http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id (状态码 200) 的响应体 conforms to the JSON schema.", - "duration_seconds": 0.0193297500081826, - "timestamp": "2025-06-16T18:36:34.240860", + "duration_seconds": 0.039132957987021655, + "timestamp": "2025-06-20T10:38:53.055964", "validation_points": [ { "passed": true, @@ -1920,13 +1906,13 @@ "test_case_name": "时间字段ISO 8601格式检查", "test_case_severity": "中", "status": "通过", - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。", - "duration_seconds": 0.018443040986312553, - "timestamp": "2025-06-16T18:36:34.259399", + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。", + "duration_seconds": 0.026158416992984712, + "timestamp": "2025-06-20T10:38:53.082286", "validation_points": [ { "passed": true, - "message": "在API规范中未找到可供静态检查的时间相关字段(类型为string且格式为date-time)。" + "message": "在API规范中未找到可供静态检查的时间相关字段(如 format: date-time 或 常见时间字段名)。" } ] }, @@ -1936,8 +1922,8 @@ "test_case_severity": "中", "status": "通过", "message": "API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 正确以'/api/'开头;API路径 '/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 包含版本标识: 'v1'", - "duration_seconds": 0.017058583005564287, - "timestamp": "2025-06-16T18:36:34.276611", + "duration_seconds": 0.023859583016019315, + "timestamp": "2025-06-20T10:38:53.106330", "validation_points": [ { "full_path": "/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}" @@ -1955,8 +1941,8 @@ "test_case_severity": "严重", "status": "失败", "message": "API通过HTTP (http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_dms_instance_code/v1/cd_geo_unit/1.0.0/example_id) 响应了成功的状态码 200,这违反了HTTPS强制策略。", - "duration_seconds": 0.01978775000316091, - "timestamp": "2025-06-16T18:36:34.296515", + "duration_seconds": 0.024642208009026945, + "timestamp": "2025-06-20T10:38:53.131158", "validation_points": [ { "status_code": 200 @@ -1969,8 +1955,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:在查询参数中未找到合适的字段来测试类型不匹配。", - "duration_seconds": 0.01960604201303795, - "timestamp": "2025-06-16T18:36:34.316192", + "duration_seconds": 0.026358041970524937, + "timestamp": "2025-06-20T10:38:53.157611", "validation_points": [ { "passed": true, @@ -1983,36 +1969,22 @@ "test_case_name": "Error Code -1 - Request Body Type Mismatch Validation", "test_case_severity": "中", "status": "失败", - "message": "当请求体字段 'isSearchCount' 类型不匹配时, 业务错误码应为 -1,但实际为 34。", - "duration_seconds": 0.016326459008269012, - "timestamp": "2025-06-16T18:36:34.332577", + "message": "当请求体字段 'isSearchCount' 类型不匹配时, 业务错误码应为 -1,但实际为 51。", + "duration_seconds": 0.029199042008258402, + "timestamp": "2025-06-20T10:38:53.186906", "validation_points": [ { "expected_code": -1, - "actual_code": 34, + "actual_code": 51, "response_body": { - "code": 34, - "message": "aliquip ad voluptate", + "code": 51, + "message": "ut", "data": { - "total": 22, + "total": 93, "list": [ { - "dsid": "9", - "dataRegion": "nulla et", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "23", - "dataRegion": "ea", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "81", - "dataRegion": "sed in", + "dsid": "66", + "dataRegion": "enim in voluptate", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -2029,8 +2001,8 @@ "test_case_severity": "中", "status": "通过", "message": "跳过测试:未找到具有明确范围限制的数值字段。", - "duration_seconds": 0.016642291011521593, - "timestamp": "2025-06-16T18:36:34.349287", + "duration_seconds": 0.02757999999448657, + "timestamp": "2025-06-20T10:38:53.214591", "validation_points": [ { "passed": true, @@ -2043,29 +2015,22 @@ "test_case_name": "Error Code 4006 - Invalid Enum Value Validation", "test_case_severity": "中", "status": "失败", - "message": "当 body 字段 'logic' 值为 'invalid_enum_zi0ifg' (合法值为: ['AND', 'OR']) 时, 业务错误码应为 -1,但实际为 23。", - "duration_seconds": 0.014808875013841316, - "timestamp": "2025-06-16T18:36:34.364158", + "message": "当 body 字段 'logic' 值为 'invalid_enum_uy507l' (合法值为: ['AND', 'OR']) 时, 业务错误码应为 -1,但实际为 4。", + "duration_seconds": 0.03065541700925678, + "timestamp": "2025-06-20T10:38:53.245355", "validation_points": [ { "expected_code": -1, - "actual_code": 23, + "actual_code": 4, "response_body": { - "code": 23, - "message": "cupidatat Lorem in eiusmod", + "code": 4, + "message": "esse dolore sed", "data": { - "total": 46, + "total": 1, "list": [ { - "dsid": "21", - "dataRegion": "nostrud tempor laborum id pariatur", - "gasReleaseMon": null, - "gasReleaseYear": null, - "releaseGasCum": null - }, - { - "dsid": "70", - "dataRegion": "ipsum", + "dsid": "89", + "dataRegion": "sunt mollit Lorem", "gasReleaseMon": null, "gasReleaseYear": null, "releaseGasCum": null @@ -2082,8 +2047,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填请求体字段用于移除测试。", - "duration_seconds": 0.06328870801371522, - "timestamp": "2025-06-16T18:36:34.427575", + "duration_seconds": 0.026204333000350744, + "timestamp": "2025-06-20T10:38:53.271756", "validation_points": [ { "passed": true, @@ -2097,8 +2062,8 @@ "test_case_severity": "高", "status": "通过", "message": "跳过测试:在API规范中未找到合适的必填查询参数用于移除测试。", - "duration_seconds": 0.016155707999132574, - "timestamp": "2025-06-16T18:36:34.443798", + "duration_seconds": 0.024508624977897853, + "timestamp": "2025-06-20T10:38:53.296363", "validation_points": [ { "passed": true, @@ -2120,9 +2085,9 @@ "generic_validation" ], "overall_status": "失败", - "duration_seconds": "0.03", - "start_time": "2025-06-16T18:36:34", - "end_time": "2025-06-16T18:36:34", + "duration_seconds": "0.05", + "start_time": "2025-06-20T10:38:53", + "end_time": "2025-06-20T10:38:53", "message": "测试阶段因步骤 'List and Find Created Resource' 的状态 (失败) 而中止.", "executed_steps_count": 2, "executed_steps": [ @@ -2134,7 +2099,7 @@ "status": "通过", "message": "", "duration_seconds": "0.0000", - "timestamp": "2025-06-16T18:36:34+0800", + "timestamp": "2025-06-20T10:38:53+0800", "validation_points": [ { "passed": true, @@ -2156,8 +2121,8 @@ "version": "1.0.0", "data": [ { - "wellCommonName": "TestResource_1750070194_ff0a3f", - "dataRegion": "Feature_1750070194" + "wellCommonName": "TestResource_1750387133_207b0e", + "dataRegion": "Feature_1750387133" } ] }, @@ -2165,8 +2130,8 @@ "version": "1.0.0", "data": [ { - "wellCommonName": "TestResource_1750070194_ff0a3f", - "dataRegion": "Feature_1750070194" + "wellCommonName": "TestResource_1750387133_207b0e", + "dataRegion": "Feature_1750387133" } ] }, @@ -2175,10 +2140,10 @@ }, "extracted_outputs": {}, "context_after_step_summary": { - "unique_resource_name": "TestResource_1750070194_ff0a3f", - "updated_resource_name": "TestResource_1750070194_ff0a3f_UPDATED", - "unique_feature_value": "Feature_1750070194", - "updated_feature_value": "Feature_1750070194_UPDATED", + "unique_resource_name": "TestResource_1750387133_207b0e", + "updated_resource_name": "TestResource_1750387133_207b0e_UPDATED", + "unique_feature_value": "Feature_1750387133", + "updated_feature_value": "Feature_1750387133_UPDATED", "cfg_list_path_in_listresponse": "data.list", "cfg_name_field_in_listitem": "wellCommonName", "cfg_id_field_in_listitem": "dsid", @@ -2197,9 +2162,9 @@ "lookup_key": "地质单元列表查询", "resolved_endpoint": "POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}", "status": "失败", - "message": "Resource not found: Name 'TestResource_1750070194_ff0a3f' (field: wellCommonName) not found in list at path 'data.list'.", + "message": "Resource not found: Name 'TestResource_1750387133_207b0e' (field: wellCommonName) not found in list at path 'data.list'.", "duration_seconds": "0.0000", - "timestamp": "2025-06-16T18:36:34+0800", + "timestamp": "2025-06-20T10:38:53+0800", "validation_points": [ { "passed": true, @@ -2207,7 +2172,7 @@ }, { "passed": false, - "message": "Resource not found: Name 'TestResource_1750070194_ff0a3f' (field: wellCommonName) not found in list at path 'data.list'." + "message": "Resource not found: Name 'TestResource_1750387133_207b0e' (field: wellCommonName) not found in list at path 'data.list'." } ], "api_call_curl": "N/A", @@ -2236,7 +2201,7 @@ "key": "wellCommonName", "symbol": "=", "realValue": [ - "TestResource_1750070194_ff0a3f" + "TestResource_1750387133_207b0e" ] } } @@ -2253,7 +2218,7 @@ "key": "wellCommonName", "symbol": "=", "realValue": [ - "TestResource_1750070194_ff0a3f" + "TestResource_1750387133_207b0e" ] } } @@ -2263,10 +2228,10 @@ }, "extracted_outputs": {}, "context_after_step_summary": { - "unique_resource_name": "TestResource_1750070194_ff0a3f", - "updated_resource_name": "TestResource_1750070194_ff0a3f_UPDATED", - "unique_feature_value": "Feature_1750070194", - "updated_feature_value": "Feature_1750070194_UPDATED", + "unique_resource_name": "TestResource_1750387133_207b0e", + "updated_resource_name": "TestResource_1750387133_207b0e_UPDATED", + "unique_feature_value": "Feature_1750387133", + "updated_feature_value": "Feature_1750387133_UPDATED", "cfg_list_path_in_listresponse": "data.list", "cfg_name_field_in_listitem": "wellCommonName", "cfg_id_field_in_listitem": "dsid", @@ -2281,10 +2246,10 @@ } ], "final_stage_context_summary": { - "unique_resource_name": "TestResource_1750070194_ff0a3f", - "updated_resource_name": "TestResource_1750070194_ff0a3f_UPDATED", - "unique_feature_value": "Feature_1750070194", - "updated_feature_value": "Feature_1750070194_UPDATED", + "unique_resource_name": "TestResource_1750387133_207b0e", + "updated_resource_name": "TestResource_1750387133_207b0e_UPDATED", + "unique_feature_value": "Feature_1750387133", + "updated_feature_value": "Feature_1750387133_UPDATED", "cfg_list_path_in_listresponse": "data.list", "cfg_name_field_in_listitem": "wellCommonName", "cfg_id_field_in_listitem": "dsid",