fix2:yapi

This commit is contained in:
gongwenxin
2025-05-26 16:38:38 +08:00
parent 6dde4d73e0
commit 01b044b35a
9 changed files with 111784 additions and 1840 deletions
+11 -3
View File
@@ -803,8 +803,14 @@ class APITestOrchestrator:
# 调用 _prepare_initial_request_data 时传递 test_case_instance
# 并直接解包返回的元组
method, path_params_data, query_params_data, headers_data, body_data = \
self._prepare_initial_request_data(endpoint_spec_dict, test_case_instance=test_case_instance)
request_context_data = self._prepare_initial_request_data(endpoint_spec_dict, test_case_instance=test_case_instance)
# 从 request_context_data 对象中获取各个部分
method = request_context_data.method
path_params_data = request_context_data.path_params
query_params_data = request_context_data.query_params
headers_data = request_context_data.headers
body_data = request_context_data.body
# 让测试用例有机会修改这些生成的数据
# 注意: BaseAPITestCase 中的 generate_* 方法现在需要传入 endpoint_spec_dict
@@ -1053,7 +1059,9 @@ class APITestOrchestrator:
# 3.1 设置 Content-Type
# 优先从 requestBody.content 获取 (OpenAPI 3.x)
request_body_spec = endpoint_spec.get('requestBody', {})
request_body_spec_candidate = endpoint_spec.get('requestBody')
request_body_spec = request_body_spec_candidate if isinstance(request_body_spec_candidate, dict) else {}
if 'content' in request_body_spec:
content_types = list(request_body_spec['content'].keys())
if content_types: