Jmeter之TCP取样器
2024-08-28 19:54:02
1.在线程组中添加“TCP取样器”
2.填写数据
以下截图是必须配置的
TCPClient classname: 填写TCP报文格式(有三类),默认前缀:org.apache.jmeter.protocol.tcp.sampler.
- TCPClientImpl:普通文本传输,可设置他的编码格式(eg:json串)
- BinaryTCPClientImpl:十六进制报文(常用)
- LengthPrefixedBinaryTCPClientImpl:继承BinaryTCPClientImpl类,并在BinaryTCPClientlmpl前面增加两个字节数据长度。
Target Server:填写正确的IP,和端口
Timeouts:最大连接时间和响应时间,一旦超时就被当做失败。(一般不设置)
Re-use connection:TCP长连接,一个线程里,复用这个连接(常用)
End of line(EOL) byte value:响应数据的最后2位,转换为10进制的值。取值区间[-128,127]
- 因为TCP长连接是不会断开的,我们需要从响应数据来判断并告知TCP取样器这次请求已经获得了数据/响应成功,然后运行其他线程
例如:响应数据为“F000”,最后2位是“00”,所以这里填入“0”
如果不知道返回数据,可以调测。因为没有设置EOL所以在运行后,自行点击stop。然后在“查看结果树”的响应数据中查看数据。
- 再如果,这个长连接就是没有数据返回,那就磨着开发给个返回值,毕竟我就是这样做的~哈哈。以后发现其他解决方法更新这里
要发送的文本:这个文本需要开发提供
- 坑1:十六进制数之间不能有空格(报错:Response message: java.lang.IllegalArgumentException: Hex-encoded binary string contains an uneven no. of digits)
- 坑2:不能有换行(报错:Response message: java.lang.IllegalArgumentException: Hex-encoded binary string contains an uneven no. of digits)
3.jmeter属性配置文件修改
依据当前采用的报文格式,修改
#tcp.handler=TCPClientImpl
#tcp.handler=BinaryTCPClientImpl
#tcp.handler=LengthPrefixedBinaryTCPClientImpl
4.单线程测试通过后,设置并发量,启动查看测试结果
最新文章
- 小tip:CSS vw让overflow:auto页面滚动条出现时不跳动
- MySQL5:性能优化
- javascript学习笔记1-document.write
- 二分匹配之最大权值匹配算法---KM模板
- 【Populating Next Right Pointers in Each Node II】cpp
- BZOJ 1046 上升序列
- OpenStack协同并发 eventlet
- [kuangbin带你飞]专题六 最小生成树 POJ 2421 Constructing Roads
- mysql启动失败问题记录
- Vue(小案例_vue+axios仿手机app)_实现用户评论
- PRBS
- python 爬虫 requests+BeautifulSoup 爬取巨潮资讯公司概况代码实例
- ADC裸机程序
- oracle dataguard主从切换
- 【C++ Primer 第13章】6.对象移动
- HTTP上传大文件的注意点
- Java反射机制--笔记
- WPF获取窗口句柄
- 《Android虚拟机》----虚拟机概述
- 修改selinux出现setsebool: SELinux is disabled.的解决方法