您的位置:首页 > 汽车 > 时评 > 漳州芗城疫情最新消息_长沙数字引擎信息技术有限公司_如何制作链接推广_如何推广引流

漳州芗城疫情最新消息_长沙数字引擎信息技术有限公司_如何制作链接推广_如何推广引流

2025/1/10 11:43:58 来源:https://blog.csdn.net/heshiyuan1406146854/article/details/144956516  浏览:    关键词:漳州芗城疫情最新消息_长沙数字引擎信息技术有限公司_如何制作链接推广_如何推广引流
漳州芗城疫情最新消息_长沙数字引擎信息技术有限公司_如何制作链接推广_如何推广引流

 1. 各个组件如何新建的?

 2. "http请求" 组件内容样例:

 "消息体数据" 源码:

{"task_tag": "face_detect","image_type": "base64","extra_args": [{"model": "face","param": {"similar_thres": 0.68,"filter_size": 140}}],"images": ["${imageBase64}"]
}

 3. "http信息头管理器" 内容样例:

 4. "BeanShell PreProcessor"

 源码:

import org.apache.commons.codec.binary.Base64;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;String randomNum = "${__Random(1,5)}";
// 图片文件路径
String imagePath = "D:/xxx_jmeter_test/003人脸识别/张三/"+ randomNum +".jpg";
InputStream in = null;
try {// 读取图片文件in = new FileInputStream(imagePath);byte[] fileBytes = new byte[in.available()];in.read(fileBytes);in.close();// 转换为Base64编码byte[] base64Bytes = Base64.encodeBase64(fileBytes);String base64String = new String(base64Bytes);// 将Base64编码设置到变量中vars.put("imageBase64", base64String);
} catch (Exception e) {e.printStackTrace();throw new RuntimeException("Error reading or converting the image: " + e.getMessage());
}finally {if( in != null ){try {in.close();}catch ( Exception e ){e.printStackTrace();}}
}

 5. "JSR223 PostProcessor" 内容示例:

源码: 

import groovy.json.JsonSlurper// 获取响应数据作为字符串
String responseData = prev.getResponseDataAsString()// 解析 JSON 字符串
def json = new JsonSlurper().parseText(responseData)// 检查 code 属性的值是否为 "500"
if (json.code == "500") {// 抛出取样器错误prev.setSuccessful(false) // 标记取样器为失败prev.setResponseMessage("data attribute is 'error'") // 设置错误消息// 可选:设置响应码(如果你想要的话)// prev.setResponseCode("500") // 这通常不是必需的,因为响应码应该由服务器设置// 抛出异常来结束当前线程(注意:这会影响报告)// 如果你不想在报告中看到异常,你可以只设置 prev 的状态而不抛出异常// 但是,不抛出异常可能不会立即停止线程的执行//throw new RuntimeException("Sample error due to 'data' attribute being 'error'.")
}

默认情况在,在 "查看结果树"、"统计报告" 中只有 http 请求层面的错误才被当做失败,但是在实际开发中,无论实际是成功还是失败,http 层面的 code 都是返回 200,而是在响应内容中的 json 中有额外的业务 code = 500 等来标识错误,但是却不会体现在  "查看结果树"、"统计报告"  中的失败条目中,这时可以在 JSR223 后置处理程序中编写脚本来提取出响应业务数据 json 中的错误码,进而强制标记取样器为失败。

6. 线程组:

一个线程组下面可以新建多个 "http 请求"( 鼠标右键 "线程组" --> 添加 --> 取样器 --> http 请求 ) ,然后设置线程数、循环次数等,表示 jmeter 会启动这么些个线程循环这么些个次数来请求该线程组下面的 http 接口

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com