From f03c2709804b7f381d0ac574be02fd3ec2e0acba Mon Sep 17 00:00:00 2001 From: liangdaliang Date: Fri, 7 Mar 2025 10:21:21 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3http=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E5=A4=B4=E8=A7=A3=E6=9E=90=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/test/common/utils/JMeterUtil.java | 17 ++++++++++++----- .../service/impl/TestCaseStepServiceImpl.java | 1 + 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/test-common/src/main/java/com/test/common/utils/JMeterUtil.java b/test-common/src/main/java/com/test/common/utils/JMeterUtil.java index 3751a96..de5b8db 100644 --- a/test-common/src/main/java/com/test/common/utils/JMeterUtil.java +++ b/test-common/src/main/java/com/test/common/utils/JMeterUtil.java @@ -100,12 +100,19 @@ public class JMeterUtil { } // 5. 创建请求头管理器 Map headerMap = new HashMap<>(); - if (!StringUtils.isEmpty(requestHeader)) { + if (!StringUtils.isEmpty(requestHeader) && !requestHeader.equals("[]")) { Gson gson = new Gson(); - // 定义 Map 的类型 - Type type = new TypeToken>() {}.getType(); - // 将 JSON 字符串转换为 Map - headerMap = gson.fromJson(requestHeader, type); + // 定义类型 + Type type = new TypeToken>>() {}.getType(); + // 解析 JSON 数组 + List> headerList = gson.fromJson(requestHeader, type); + // 将 List> 转换为 Map + for (Map entry : headerList) { + String key = entry.get("key"); + String value = entry.get("value"); + headerMap.put(key, value); + } + } HeaderManager headerManager = createHeaderManager(headerMap); diff --git a/test-test/src/main/java/com/test/test/service/impl/TestCaseStepServiceImpl.java b/test-test/src/main/java/com/test/test/service/impl/TestCaseStepServiceImpl.java index c8b6a4d..06df93b 100644 --- a/test-test/src/main/java/com/test/test/service/impl/TestCaseStepServiceImpl.java +++ b/test-test/src/main/java/com/test/test/service/impl/TestCaseStepServiceImpl.java @@ -150,6 +150,7 @@ public class TestCaseStepServiceImpl implements ITestCaseStepService { jmeterRequest.setRequestParams(testCaseStep.getRequestParams()); jmeterRequest.setRequestHeader(testCaseStep.getRequestHeader()); jmeterRequest.setJmeterHomePath(jmeterHomePath); + log.info("getRequestHeader:{}", jmeterRequest.getRequestHeader()); Map resultMap = JMeterUtil.getJmeterResult(jmeterRequest); return resultMap;