This commit is contained in:
gongwenxin 2025-05-21 18:31:26 +08:00
parent 2b1afbf47e
commit 0e3e721bc0
9 changed files with 443 additions and 345 deletions

View File

@ -1,5 +1,6 @@
from ddms_compliance_suite.test_framework_core import BaseAPITestCase, TestSeverity, ValidationResult, APIRequestContext, APIResponseContext
import logging
from typing import Dict, Any, Optional # 确保引入 Optional
class StatusCode200Check(BaseAPITestCase):
# 1. 元数据
@ -11,13 +12,14 @@ class StatusCode200Check(BaseAPITestCase):
# 适用于所有方法和路径 (默认)
# applicable_methods = None
# applicable_paths_regex = None
execution_order = 10 # 示例执行顺序
use_llm_for_body: bool = True
use_llm_for_path_params: bool = True
use_llm_for_query_params: bool = True
use_llm_for_headers: bool = True
def __init__(self, endpoint_spec: dict, global_api_spec: dict):
super().__init__(endpoint_spec, global_api_spec)
def __init__(self, endpoint_spec: Dict[str, Any], global_api_spec: Dict[str, Any], json_schema_validator: Optional[Any] = None):
super().__init__(endpoint_spec, global_api_spec, json_schema_validator=json_schema_validator)
self.logger.info(f"测试用例 {self.id} ({self.name}) 已针对端点 '{self.endpoint_spec.get('method')} {self.endpoint_spec.get('path')}' 初始化。")
def validate_response(self, response_context: APIResponseContext, request_context: APIRequestContext) -> list[ValidationResult]:
@ -55,12 +57,13 @@ class HeaderExistenceCheck(BaseAPITestCase):
description = "验证 API 响应是否包含 'X-Request-ID' 头。"
severity = TestSeverity.MEDIUM
tags = ["header", "observability"]
execution_order = 10 # 示例执行顺序
use_llm_for_body = False
EXPECTED_HEADER = "X-Request-ID" # 示例,可以根据实际需要修改
def __init__(self, endpoint_spec: dict, global_api_spec: dict):
super().__init__(endpoint_spec, global_api_spec)
def __init__(self, endpoint_spec: Dict[str, Any], global_api_spec: Dict[str, Any], json_schema_validator: Optional[Any] = None):
super().__init__(endpoint_spec, global_api_spec, json_schema_validator=json_schema_validator)
self.logger.info(f"测试用例 {self.id} ({self.name}) 已初始化 for endpoint {self.endpoint_spec.get('path')}")
def validate_response(self, response_context: APIResponseContext, request_context: APIRequestContext) -> list[ValidationResult]:

View File

@ -93,16 +93,18 @@ class BaseAPITestCase:
use_llm_for_query_params: bool = False
use_llm_for_headers: bool = False
def __init__(self, endpoint_spec: Dict[str, Any], global_api_spec: Dict[str, Any]):
def __init__(self, endpoint_spec: Dict[str, Any], global_api_spec: Dict[str, Any], json_schema_validator: Optional[Any] = None):
"""
初始化测试用例
Args:
endpoint_spec: 当前被测API端点的详细定义 (来自YAPI/Swagger解析结果)
global_api_spec: 完整的API规范文档 (来自YAPI/Swagger解析结果)
json_schema_validator: APITestOrchestrator 传入的 JSONSchemaValidator 实例 (可选)
"""
self.endpoint_spec = endpoint_spec
self.global_api_spec = global_api_spec
self.logger = logging.getLogger(f"testcase.{self.id}")
self.json_schema_validator = json_schema_validator # 存储传入的校验器实例
self.logger.debug(f"Test case '{self.id}' initialized for endpoint: {self.endpoint_spec.get('method', '')} {self.endpoint_spec.get('path', '')}")
# --- 1. 请求生成与修改阶段 ---
@ -118,6 +120,21 @@ class BaseAPITestCase:
self.logger.debug(f"Hook: generate_request_body, current body type: {type(current_body)}")
return current_body
# --- 1.5. 请求URL修改阶段 (新增钩子) ---
def modify_request_url(self, current_url: str) -> str:
"""
允许测试用例在请求发送前修改最终构建的URL
默认不进行任何修改
Args:
current_url: 由编排器构建的当前请求URL (已包含base_url和路径参数)
Returns:
最终要使用的URL
"""
self.logger.debug(f"Hook: modify_request_url, original URL: {current_url}")
return current_url
# --- 2. 请求预校验阶段 ---
def validate_request_url(self, url: str, request_context: APIRequestContext) -> List[ValidationResult]:
self.logger.debug(f"Hook: validate_request_url, url: {url}")
@ -141,6 +158,48 @@ class BaseAPITestCase:
self.logger.debug(f"Hook: check_performance, elapsed: {response_context.elapsed_time}")
return []
# --- Helper methods ---
def validate_data_against_schema(
self,
data_to_validate: Any,
schema_definition: Dict[str, Any],
context_message_prefix: str = "Data"
) -> List[ValidationResult]:
"""
使用注入的 JSONSchemaValidator 针对给定的 schema 验证数据
Args:
data_to_validate: 要验证的数据 (通常是解析后的 JSON 对象)
schema_definition: JSON Schema 定义字典
context_message_prefix: 用于错误消息的上下文前缀
Returns:
一个 ValidationResult 对象的列表
"""
results = []
if not self.json_schema_validator:
self.logger.warning(f"JSONSchemaValidator 未注入到测试用例 '{self.id}'。无法执行 schema 验证。")
results.append(self.failed(f"{context_message_prefix} schema validation skipped: Validator not available."))
return results
is_valid, errors = self.json_schema_validator.validate(data_to_validate, schema_definition)
if is_valid:
results.append(self.passed(f"{context_message_prefix} conforms to the JSON schema."))
else:
error_messages = []
if isinstance(errors, list):
for error in errors: # jsonschema.exceptions.ValidationError 对象
error_messages.append(f"- Path: '{list(error.path)}', Message: {error.message}") # error.path 是一个deque
elif isinstance(errors, str): # 兼容旧版或简单错误字符串
error_messages.append(errors)
full_message = f"{context_message_prefix} does not conform to the JSON schema. Errors:\n" + "\n".join(error_messages)
results.append(self.failed(
message=full_message,
details={"schema_errors": error_messages, "validated_data_sample": str(data_to_validate)[:200]}
))
self.logger.warning(f"{context_message_prefix} schema validation failed: {full_message}")
return results
# --- Helper to easily create a passed ValidationResult ---
@staticmethod
def passed(message: str, details: Optional[Dict[str, Any]] = None) -> ValidationResult:

View File

@ -665,7 +665,8 @@ class APITestOrchestrator:
try:
test_case_instance = test_case_class(
endpoint_spec=endpoint_spec_dict,
global_api_spec=global_api_spec_dict
global_api_spec=global_api_spec_dict,
json_schema_validator=self.validator # <--- 注入 JSONSchemaValidator
)
test_case_instance.logger.info(f"开始执行测试用例 '{test_case_instance.id}' for endpoint '{endpoint_spec_dict.get('method')} {endpoint_spec_dict.get('path')}'")
@ -694,9 +695,26 @@ class APITestOrchestrator:
# 注意: 如果 _prepare_initial_request_data 填充的 final_url 已经包含了 base_url这里的拼接逻辑需要调整
# 假设 final_url_template 只是 path string e.g. /users/{id}
# ---- 调用测试用例的 URL 修改钩子 ----
effective_url = final_url # 默认使用原始构建的URL
if hasattr(test_case_instance, 'modify_request_url') and callable(getattr(test_case_instance, 'modify_request_url')):
try:
modified_url_by_tc = test_case_instance.modify_request_url(final_url)
if modified_url_by_tc != final_url:
test_case_instance.logger.info(f"Test case '{test_case_instance.id}' modified URL from '{final_url}' to '{modified_url_by_tc}'")
effective_url = modified_url_by_tc # 使用测试用例修改后的URL
else:
test_case_instance.logger.debug(f"Test case '{test_case_instance.id}' did not modify the URL via modify_request_url hook.")
except Exception as e_url_mod:
test_case_instance.logger.error(f"Error in test case '{test_case_instance.id}' during modify_request_url: {e_url_mod}. Using original URL '{final_url}'.", exc_info=True)
# effective_url 保持为 final_url
else:
test_case_instance.logger.debug(f"Test case '{test_case_instance.id}' does not have a callable modify_request_url method. Using original URL.")
# ---- 结束 URL 修改钩子调用 ----
api_request_context = APIRequestContext(
method=method, # 使用从 _prepare_initial_request_data 获取的 method
url=final_url,
url=effective_url, # <--- 使用 effective_url
path_params=current_path_params,
query_params=current_q_params,
headers=current_headers,
@ -1156,8 +1174,13 @@ class APITestOrchestrator:
global_api_spec=global_api_spec
)
endpoint_test_result.add_executed_test_case_result(executed_case_result)
if executed_case_result.status.value == TestResult.Status.FAILED.value:
# 红色
self.logger.debug(f"\033[91m ❌ 测试用例 '{tc_class.id}' 执行失败。\033[0m")
else:
self.logger.debug(f"\033[92m ✅ 测试用例 '{tc_class.id}' 执行成功。\033[0m")
self.logger.debug(f"测试用例 '{tc_class.id}' 执行完毕,状态: {executed_case_result.status.value}")
endpoint_test_result.finalize_endpoint_test()
self.logger.info(f"端点 '{endpoint_id}' 测试完成,最终状态: {endpoint_test_result.overall_status.value}")

599
log.txt
View File

@ -1,298 +1,311 @@
2025-05-21 17:04:17,210 - __main__ - DEBUG - 已启用详细日志模式
2025-05-21 17:04:17,210 - __main__ - INFO - args.api_key: sk-0213c70194624703a1d0d80e0f762b0e
2025-05-21 17:04:17,210 - ddms_compliance_suite.test_orchestrator - INFO - 初始化 TestCaseRegistry扫描目录: ./custom_testcases
2025-05-21 17:04:17,210 - ddms_compliance_suite.test_case_registry - INFO - 开始从目录 './custom_testcases' 发现测试用例...
2025-05-21 17:04:17,210 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: basic_checks 从 ./custom_testcases/basic_checks.py
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-HEADER-001' (检查响应中是否存在 'X-Request-ID' 头) 来自类 'HeaderExistenceCheck'
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-STATUS-001' (基本状态码 200 检查) 来自类 'StatusCode200Check'
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - INFO - 测试用例发现完成。总共注册了 2 个独特的测试用例 (基于ID)。发现 2 个测试用例类。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - TestCaseRegistry 初始化完成,发现 2 个测试用例类。
2025-05-21 17:04:17,211 - ddms_compliance_suite.llm_utils.llm_service - INFO - LLMService initialized for model 'qwen-plus' at https://dashscope.aliyuncs.com/compatible-mode/v1
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - LLMService 已成功初始化,模型: qwen-plus。
2025-05-21 17:04:17,211 - __main__ - INFO - 从Swagger文件运行测试: assets/doc/井筒API示例swagger_fixed_simple.json
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - 从Swagger文件加载API定义: assets/doc/井筒API示例swagger_fixed_simple.json
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} (数据推送接口)
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,211 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}
2025-05-21 17:04:17,211 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 的参数未在缓存中找到,开始生成。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'schema' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'schema', 'in': 'path', 'description': '', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'schema'): example_string
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'version' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'version', 'in': 'path', 'description': '', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'version'): example_string
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string', 'schema': 'example_string', 'version': 'example_string'}
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 没有定义 query 参数。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 的参数已生成并存入缓存。
2025-05-21 17:04:17,211 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'schema': 'example_string', 'version': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,268 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/message/push/example_string/example_string 的响应中找到。
2025-05-21 17:04:17,268 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 17:04:17,268 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 17:04:17,268 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,268 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,268 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。
2025-05-21 17:04:17,268 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 17:04:17,268 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 17:04:17,268 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 的LLM参数。
2025-05-21 17:04:17,268 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'schema': 'example_string', 'version': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,310 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/message/push/example_string/example_string
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 测试完成,最终状态: 部分成功
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} (地质单元列表查询)
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,310 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}
2025-05-21 17:04:17,310 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 的参数未在缓存中找到,开始生成。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'version' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'version', 'in': 'path', 'description': '交换模型版本', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'version'): example_string
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string', 'version': 'example_string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为查询参数。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 query 参数。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'pageNo' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'pageNo', 'in': 'query', 'required': False, 'description': '页码(从1开始)', 'type': 'string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'pageNo'): example_string
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'pageSize' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'pageSize', 'in': 'query', 'required': False, 'description': '分页大小(最大值200)', 'type': 'string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'pageSize'): example_string
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 query 参数: {'pageNo': 'example_string', 'pageSize': 'example_string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 的参数已生成并存入缓存。
2025-05-21 17:04:17,310 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'version': 'example_string'}, query_params={'pageNo': 'example_string', 'pageSize': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,353 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string 的响应中找到。
2025-05-21 17:04:17,353 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 17:04:17,353 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 17:04:17,353 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,353 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,353 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。
2025-05-21 17:04:17,353 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 17:04:17,353 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 17:04:17,353 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 的LLM参数。
2025-05-21 17:04:17,353 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'version': 'example_string'}, query_params={'pageNo': 'example_string', 'pageSize': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,390 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 测试完成,最终状态: 部分成功
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据修改)
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,391 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit
2025-05-21 17:04:17,391 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数未在缓存中找到,开始生成。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string'}
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为查询参数。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 query 参数。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'id' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'id', 'in': 'query', 'required': True, 'description': '主键id的key', 'type': 'string'}
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'id'): example_string
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 query 参数: {'id': 'example_string'}
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数已生成并存入缓存。
2025-05-21 17:04:17,391 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=PUT, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,406 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit 的响应中找到。
2025-05-21 17:04:17,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 17:04:17,406 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,406 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,406 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,406 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。
2025-05-21 17:04:17,406 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,406 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 17:04:17,406 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的LLM参数。
2025-05-21 17:04:17,406 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=PUT, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,427 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 部分成功
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据删除)
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,427 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit
2025-05-21 17:04:17,427 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数未在缓存中找到,开始生成。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string'}
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为查询参数。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 query 参数。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'id' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'id', 'in': 'query', 'required': True, 'description': '主键id的key', 'type': 'string'}
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'id'): example_string
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 query 参数: {'id': 'example_string'}
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数已生成并存入缓存。
2025-05-21 17:04:17,427 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=DELETE, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,443 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit 的响应中找到。
2025-05-21 17:04:17,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 17:04:17,443 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,443 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,443 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,443 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。
2025-05-21 17:04:17,443 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,443 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 17:04:17,443 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的LLM参数。
2025-05-21 17:04:17,443 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=DELETE, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,457 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 部分成功
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据添加)
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,457 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit
2025-05-21 17:04:17,457 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数未在缓存中找到,开始生成。
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string'}
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - [] 没有定义 query 参数。
2025-05-21 17:04:17,457 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数已生成并存入缓存。
2025-05-21 17:04:17,458 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,473 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit 的响应中找到。
2025-05-21 17:04:17,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 17:04:17,473 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,473 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,473 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,473 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。
2025-05-21 17:04:17,473 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 17:04:17,473 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 17:04:17,473 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的LLM参数。
2025-05-21 17:04:17,473 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,489 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 部分成功
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} (地质单元查询详情)
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,489 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}
2025-05-21 17:04:17,489 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 的参数未在缓存中找到,开始生成。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'version' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'version', 'in': 'path', 'description': '交换模型版本', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'version'): example_string
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'id' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'id', 'in': 'path', 'description': '', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'id'): example_string
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string', 'version': 'example_string', 'id': 'example_string'}
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 没有定义 query 参数。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 的参数已生成并存入缓存。
2025-05-21 17:04:17,489 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=GET, path_params={'dms_instance_code': 'example_string', 'version': 'example_string', 'id': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,502 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string/example_string 的响应中找到。
2025-05-21 17:04:17,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 17:04:17,502 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 17:04:17,502 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 17:04:17,502 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 17:04:17,502 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。
2025-05-21 17:04:17,502 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 17:04:17,502 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 17:04:17,502 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 的LLM参数。
2025-05-21 17:04:17,502 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=GET, path_params={'dms_instance_code': 'example_string', 'version': 'example_string', 'id': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 17:04:17,518 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string/example_string
2025-05-21 17:04:17,518 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 17:04:17,518 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 测试完成,最终状态: 部分成功
2025-05-21 17:04:17,519 - __main__ - INFO - 测试结果已保存为JSON: test_report.json
2025-05-21 18:30:41,316 - __main__ - DEBUG - 已启用详细日志模式
2025-05-21 18:30:41,316 - __main__ - INFO - args.api_key: sk-0213c70194624703a1d0d80e0f762b0e
2025-05-21 18:30:41,316 - ddms_compliance_suite.test_orchestrator - INFO - 初始化 TestCaseRegistry扫描目录: ./custom_testcases
2025-05-21 18:30:41,316 - ddms_compliance_suite.test_case_registry - INFO - 开始从目录 './custom_testcases' 发现测试用例...
2025-05-21 18:30:41,316 - ddms_compliance_suite.test_case_registry - DEBUG - 成功导入模块: basic_checks 从 ./custom_testcases/basic_checks.py
2025-05-21 18:30:41,316 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-HEADER-001' (检查响应中是否存在 'X-Request-ID' 头) 来自类 'HeaderExistenceCheck'
2025-05-21 18:30:41,316 - ddms_compliance_suite.test_case_registry - INFO - 已注册测试用例: 'TC-STATUS-001' (基本状态码 200 检查) 来自类 'StatusCode200Check'
2025-05-21 18:30:41,316 - ddms_compliance_suite.test_case_registry - INFO - 已根据 execution_order (主要) 和类名 (次要) 对 2 个测试用例类进行了排序。
2025-05-21 18:30:41,316 - ddms_compliance_suite.test_case_registry - INFO - 测试用例发现完成。总共注册了 2 个独特的测试用例 (基于ID)。发现并排序了 2 个测试用例类。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - TestCaseRegistry 初始化完成,发现 2 个测试用例类。
2025-05-21 18:30:41,317 - ddms_compliance_suite.llm_utils.llm_service - INFO - LLMService initialized for model 'qwen-plus' at https://dashscope.aliyuncs.com/compatible-mode/v1
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - LLMService 已成功初始化,模型: qwen-plus。
2025-05-21 18:30:41,317 - __main__ - INFO - 从Swagger文件运行测试: assets/doc/井筒API示例swagger_fixed_simple.json
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - 从Swagger文件加载API定义: assets/doc/井筒API示例swagger_fixed_simple.json
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} (数据推送接口)
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,317 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}
2025-05-21 18:30:41,317 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 的参数未在缓存中找到,开始生成。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'schema' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'schema', 'in': 'path', 'description': '', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'schema'): example_string
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'version' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'version', 'in': 'path', 'description': '', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'version'): example_string
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string', 'schema': 'example_string', 'version': 'example_string'}
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 没有定义 query 参数。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 18:30:41,317 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 18:30:41,318 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 18:30:41,318 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 的参数已生成并存入缓存。
2025-05-21 18:30:41,318 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'schema': 'example_string', 'version': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,390 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/message/push/example_string/example_string 的响应中找到。
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,390 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 初始化。
2025-05-21 18:30:41,390 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}'
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version} 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'POST_/api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 的LLM参数。
2025-05-21 18:30:41,390 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'schema': 'example_string', 'version': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,491 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/message/push/example_string/example_string
2025-05-21 18:30:41,491 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-05-21 18:30:41,491 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}' 测试完成,最终状态: 部分成功
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} (地质单元列表查询)
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,492 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}
2025-05-21 18:30:41,492 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 的参数未在缓存中找到,开始生成。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'version' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'version', 'in': 'path', 'description': '交换模型版本', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'version'): example_string
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string', 'version': 'example_string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为查询参数。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 query 参数。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'pageNo' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'pageNo', 'in': 'query', 'required': False, 'description': '页码(从1开始)', 'type': 'string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'pageNo'): example_string
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'pageSize' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'pageSize', 'in': 'query', 'required': False, 'description': '分页大小(最大值200)', 'type': 'string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'pageSize'): example_string
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 query 参数: {'pageNo': 'example_string', 'pageSize': 'example_string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 的参数已生成并存入缓存。
2025-05-21 18:30:41,492 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'version': 'example_string'}, query_params={'pageNo': 'example_string', 'pageSize': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,517 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string 的响应中找到。
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,518 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 初始化。
2025-05-21 18:30:41,518 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}'
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version} 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 的LLM参数。
2025-05-21 18:30:41,518 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string', 'version': 'example_string'}, query_params={'pageNo': 'example_string', 'pageSize': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,539 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}' 测试完成,最终状态: 部分成功
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据修改)
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,539 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit
2025-05-21 18:30:41,539 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数未在缓存中找到,开始生成。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string'}
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为查询参数。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 query 参数。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'id' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'id', 'in': 'query', 'required': True, 'description': '主键id的key', 'type': 'string'}
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'id'): example_string
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 query 参数: {'id': 'example_string'}
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数已生成并存入缓存。
2025-05-21 18:30:41,539 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=PUT, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,557 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit 的响应中找到。
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,557 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。
2025-05-21 18:30:41,557 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'PUT_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的LLM参数。
2025-05-21 18:30:41,557 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=PUT, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,578 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 部分成功
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据删除)
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,578 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit
2025-05-21 18:30:41,578 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数未在缓存中找到,开始生成。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string'}
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为查询参数。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 query 参数。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'id' ('query' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'id', 'in': 'query', 'required': True, 'description': '主键id的key', 'type': 'string'}
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: query parameter 'id'): example_string
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 query 参数: {'id': 'example_string'}
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数已生成并存入缓存。
2025-05-21 18:30:41,578 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=DELETE, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,604 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit 的响应中找到。
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,604 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。
2025-05-21 18:30:41,604 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'DELETE_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的LLM参数。
2025-05-21 18:30:41,604 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=DELETE, path_params={'dms_instance_code': 'example_string'}, query_params={'id': 'example_string'}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,624 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 部分成功
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: POST /api/dms/{dms_instance_code}/v1/cd_geo_unit (地质单元数据添加)
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,624 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit
2025-05-21 18:30:41,624 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数未在缓存中找到,开始生成。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string'}
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 没有定义 query 参数。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的参数已生成并存入缓存。
2025-05-21 18:30:41,624 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,639 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit 的响应中找到。
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,639 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 初始化。
2025-05-21 18:30:41,639 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit'
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'POST_/api/dms/{dms_instance_code}/v1/cd_geo_unit' 的LLM参数。
2025-05-21 18:30:41,639 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=POST, path_params={'dms_instance_code': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,656 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'POST /api/dms/{dms_instance_code}/v1/cd_geo_unit' 测试完成,最终状态: 部分成功
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - 开始为端点测试: GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} (地质单元查询详情)
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-HEADER-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_case_registry - DEBUG - 测试用例 'TC-STATUS-001' 适用于端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 发现了 2 个适用的测试用例: ['TC-HEADER-001', 'TC-STATUS-001']
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-HEADER-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,656 - testcase.TC-HEADER-001 - INFO - 测试用例 TC-HEADER-001 (检查响应中是否存在 'X-Request-ID' 头) 已初始化 for endpoint /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}
2025-05-21 18:30:41,656 - testcase.TC-HEADER-001 - INFO - 开始执行测试用例 'TC-HEADER-001' for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} 准备初始请求数据 (TC: TC-HEADER-001)
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 的参数未在缓存中找到,开始生成。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为路径参数。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 path 参数。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'dms_instance_code' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'dms_instance_code', 'in': 'path', 'description': '注册实例code\n井筒中心 well_kd_wellbore_ideas01', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'dms_instance_code'): example_string
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'version' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'version', 'in': 'path', 'description': '交换模型版本', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'version'): example_string
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'id' ('path' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'id', 'in': 'path', 'description': '', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: path parameter 'id'): example_string
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 path 参数: {'dms_instance_code': 'example_string', 'version': 'example_string', 'id': 'example_string'}
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 没有定义 query 参数。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法或LLM未启用为头部参数。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 使用常规方法生成 header 参数。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'tenant-id' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'tenant-id', 'in': 'header', 'description': 'tenant-id (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'tenant-id'): example_string
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 参数 'Authorization' ('header' 类型) 缺少嵌套 'schema' 字段,尝试从顶层 'type' 构建临时schema用于常规生成。 Param spec: {'name': 'Authorization', 'in': 'header', 'description': 'Authorization (Only:undefined)', 'required': True, 'type': 'string'}
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - 生成 string 类型数据 ('') for (context: header parameter 'Authorization'): example_string
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 常规方法生成的 header 参数: {'tenant-id': 'example_string', 'Authorization': 'example_string'}
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点没有定义请求体。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - INFO - [] 端点 'GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 的参数已生成并存入缓存。
2025-05-21 18:30:41,656 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (新生成) 准备的请求数据: method=GET, path_params={'dms_instance_code': 'example_string', 'version': 'example_string', 'id': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,674 - testcase.TC-HEADER-001 - WARNING - 请求头 'X-Request-ID' 未在 http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string/example_string 的响应中找到。
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - DEBUG -  ❌ 测试用例 'TC-HEADER-001' 执行失败。
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-HEADER-001' 执行完毕,状态: 失败
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - DEBUG - 准备执行测试用例 'TC-STATUS-001' for 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - DEBUG - Manually converting endpoint_spec of type SwaggerEndpoint to dict.
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - WARNING - global_api_spec无法转换为字典实际类型: <class 'ddms_compliance_suite.input_parser.parser.ParsedSwaggerSpec'>
2025-05-21 18:30:41,674 - testcase.TC-STATUS-001 - INFO - 测试用例 TC-STATUS-001 (基本状态码 200 检查) 已针对端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 初始化。
2025-05-21 18:30:41,674 - testcase.TC-STATUS-001 - INFO - 开始执行测试用例 'TC-STATUS-001' for endpoint 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}'
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - INFO - [] 开始为端点 GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id} 准备初始请求数据 (TC: TC-STATUS-001)
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - INFO - [] 从缓存加载了端点 'GET_/api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 的LLM参数。
2025-05-21 18:30:41,674 - ddms_compliance_suite.test_orchestrator - DEBUG - [] (缓存加载) 准备的请求数据: method=GET, path_params={'dms_instance_code': 'example_string', 'version': 'example_string', 'id': 'example_string'}, query_params={}, headers=['Accept', 'tenant-id', 'Authorization'], body_type=NoneType
2025-05-21 18:30:41,691 - testcase.TC-STATUS-001 - INFO - 状态码验证通过: 200 == 200 for http://127.0.0.1:4523/m1/6389742-6086420-default/api/dms/example_string/v1/cd_geo_unit/example_string/example_string
2025-05-21 18:30:41,691 - ddms_compliance_suite.test_orchestrator - DEBUG -  ✅ 测试用例 'TC-STATUS-001' 执行成功。
2025-05-21 18:30:41,691 - ddms_compliance_suite.test_orchestrator - DEBUG - 测试用例 'TC-STATUS-001' 执行完毕,状态: 通过
2025-05-21 18:30:41,691 - ddms_compliance_suite.test_orchestrator - INFO - 端点 'GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}' 测试完成,最终状态: 部分成功
2025-05-21 18:30:41,692 - __main__ - INFO - 测试结果已保存为JSON: test_report.json
===== 测试运行摘要 =====
开始时间: 2025-05-21T17:04:17.211454
结束时间: 2025-05-21T17:04:17.518522
总耗时: 0.31 秒
开始时间: 2025-05-21T18:30:41.317570
结束时间: 2025-05-21T18:30:41.691839
总耗时: 0.37
--- 端点统计 ---
定义的端点总数: 6

View File

@ -1,7 +1,7 @@
{
"summary_metadata": {
"start_time": "2025-05-21T17:04:17.211454",
"end_time": "2025-05-21T17:04:17.518522",
"start_time": "2025-05-21T18:30:56.368119",
"end_time": "2025-05-21T18:30:56.681215",
"duration_seconds": "0.31"
},
"endpoint_stats": {
@ -28,9 +28,9 @@
"endpoint_id": "POST /api/dms/{dms_instance_code}/v1/message/push/{schema}/{version}",
"endpoint_name": "数据推送接口",
"overall_status": "部分成功",
"duration_seconds": 0.098617,
"start_time": "2025-05-21T17:04:17.211570",
"end_time": "2025-05-21T17:04:17.310187",
"duration_seconds": 0.089518,
"start_time": "2025-05-21T18:30:56.368227",
"end_time": "2025-05-21T18:30:56.457745",
"executed_test_cases": [
{
"test_case_id": "TC-HEADER-001",
@ -38,8 +38,8 @@
"test_case_severity": "中",
"status": "失败",
"message": "",
"duration_seconds": 0.05682086944580078,
"timestamp": "2025-05-21T17:04:17.268429",
"duration_seconds": 0.06334280967712402,
"timestamp": "2025-05-21T18:30:56.431606",
"validation_points": [
{
"expected_header": "X-Request-ID",
@ -62,8 +62,8 @@
"test_case_severity": "严重",
"status": "通过",
"message": "",
"duration_seconds": 0.04161787033081055,
"timestamp": "2025-05-21T17:04:17.310103",
"duration_seconds": 0.026033878326416016,
"timestamp": "2025-05-21T18:30:56.457700",
"validation_points": [
{
"passed": true,
@ -77,9 +77,9 @@
"endpoint_id": "POST /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}",
"endpoint_name": "地质单元列表查询",
"overall_status": "部分成功",
"duration_seconds": 0.080731,
"start_time": "2025-05-21T17:04:17.310299",
"end_time": "2025-05-21T17:04:17.391030",
"duration_seconds": 0.041726,
"start_time": "2025-05-21T18:30:56.457776",
"end_time": "2025-05-21T18:30:56.499502",
"executed_test_cases": [
{
"test_case_id": "TC-HEADER-001",
@ -87,8 +87,8 @@
"test_case_severity": "中",
"status": "失败",
"message": "",
"duration_seconds": 0.043160200119018555,
"timestamp": "2025-05-21T17:04:17.353522",
"duration_seconds": 0.022691011428833008,
"timestamp": "2025-05-21T18:30:56.480802",
"validation_points": [
{
"expected_header": "X-Request-ID",
@ -111,8 +111,8 @@
"test_case_severity": "严重",
"status": "通过",
"message": "",
"duration_seconds": 0.037424325942993164,
"timestamp": "2025-05-21T17:04:17.391001",
"duration_seconds": 0.01860499382019043,
"timestamp": "2025-05-21T18:30:56.499463",
"validation_points": [
{
"passed": true,
@ -126,9 +126,9 @@
"endpoint_id": "PUT /api/dms/{dms_instance_code}/v1/cd_geo_unit",
"endpoint_name": "地质单元数据修改",
"overall_status": "部分成功",
"duration_seconds": 0.036219,
"start_time": "2025-05-21T17:04:17.391064",
"end_time": "2025-05-21T17:04:17.427283",
"duration_seconds": 0.03492,
"start_time": "2025-05-21T18:30:56.499530",
"end_time": "2025-05-21T18:30:56.534450",
"executed_test_cases": [
{
"test_case_id": "TC-HEADER-001",
@ -136,8 +136,8 @@
"test_case_severity": "中",
"status": "失败",
"message": "",
"duration_seconds": 0.015516281127929688,
"timestamp": "2025-05-21T17:04:17.406630",
"duration_seconds": 0.01642608642578125,
"timestamp": "2025-05-21T18:30:56.515996",
"validation_points": [
{
"expected_header": "X-Request-ID",
@ -160,8 +160,8 @@
"test_case_severity": "严重",
"status": "通过",
"message": "",
"duration_seconds": 0.02056288719177246,
"timestamp": "2025-05-21T17:04:17.427253",
"duration_seconds": 0.018361806869506836,
"timestamp": "2025-05-21T18:30:56.534410",
"validation_points": [
{
"passed": true,
@ -175,9 +175,9 @@
"endpoint_id": "DELETE /api/dms/{dms_instance_code}/v1/cd_geo_unit",
"endpoint_name": "地质单元数据删除",
"overall_status": "部分成功",
"duration_seconds": 0.030476,
"start_time": "2025-05-21T17:04:17.427316",
"end_time": "2025-05-21T17:04:17.457792",
"duration_seconds": 0.035115,
"start_time": "2025-05-21T18:30:56.534480",
"end_time": "2025-05-21T18:30:56.569595",
"executed_test_cases": [
{
"test_case_id": "TC-HEADER-001",
@ -185,8 +185,8 @@
"test_case_severity": "中",
"status": "失败",
"message": "",
"duration_seconds": 0.01640176773071289,
"timestamp": "2025-05-21T17:04:17.443764",
"duration_seconds": 0.019882917404174805,
"timestamp": "2025-05-21T18:30:56.554426",
"validation_points": [
{
"expected_header": "X-Request-ID",
@ -209,8 +209,8 @@
"test_case_severity": "严重",
"status": "通过",
"message": "",
"duration_seconds": 0.013955831527709961,
"timestamp": "2025-05-21T17:04:17.457768",
"duration_seconds": 0.015078067779541016,
"timestamp": "2025-05-21T18:30:56.569559",
"validation_points": [
{
"passed": true,
@ -224,9 +224,9 @@
"endpoint_id": "POST /api/dms/{dms_instance_code}/v1/cd_geo_unit",
"endpoint_name": "地质单元数据添加",
"overall_status": "部分成功",
"duration_seconds": 0.03182,
"start_time": "2025-05-21T17:04:17.457819",
"end_time": "2025-05-21T17:04:17.489639",
"duration_seconds": 0.033789,
"start_time": "2025-05-21T18:30:56.569621",
"end_time": "2025-05-21T18:30:56.603410",
"executed_test_cases": [
{
"test_case_id": "TC-HEADER-001",
@ -234,8 +234,8 @@
"test_case_severity": "中",
"status": "失败",
"message": "",
"duration_seconds": 0.015901803970336914,
"timestamp": "2025-05-21T17:04:17.473765",
"duration_seconds": 0.01661515235900879,
"timestamp": "2025-05-21T18:30:56.586277",
"validation_points": [
{
"expected_header": "X-Request-ID",
@ -258,8 +258,8 @@
"test_case_severity": "严重",
"status": "通过",
"message": "",
"duration_seconds": 0.015805959701538086,
"timestamp": "2025-05-21T17:04:17.489614",
"duration_seconds": 0.017055988311767578,
"timestamp": "2025-05-21T18:30:56.603376",
"validation_points": [
{
"passed": true,
@ -273,9 +273,9 @@
"endpoint_id": "GET /api/dms/{dms_instance_code}/v1/cd_geo_unit/{version}/{id}",
"endpoint_name": "地质单元查询详情",
"overall_status": "部分成功",
"duration_seconds": 0.028834,
"start_time": "2025-05-21T17:04:17.489670",
"end_time": "2025-05-21T17:04:17.518504",
"duration_seconds": 0.077762,
"start_time": "2025-05-21T18:30:56.603434",
"end_time": "2025-05-21T18:30:56.681196",
"executed_test_cases": [
{
"test_case_id": "TC-HEADER-001",
@ -283,8 +283,8 @@
"test_case_severity": "中",
"status": "失败",
"message": "",
"duration_seconds": 0.013111114501953125,
"timestamp": "2025-05-21T17:04:17.502828",
"duration_seconds": 0.020492076873779297,
"timestamp": "2025-05-21T18:30:56.623967",
"validation_points": [
{
"expected_header": "X-Request-ID",
@ -307,8 +307,8 @@
"test_case_severity": "严重",
"status": "通过",
"message": "",
"duration_seconds": 0.015619039535522461,
"timestamp": "2025-05-21T17:04:17.518482",
"duration_seconds": 0.05701398849487305,
"timestamp": "2025-05-21T18:30:56.681140",
"validation_points": [
{
"passed": true,