我刚刚开始使用JMeter。 我正在尝试在我的一台服务器上运行TCP采样器。 TCP采样器设置为所有默认值,包括我的IP,端口号和要发送的文本。
服务器接收文本并按预期响应。 但是,一旦JMeter收到响应,它就不会关闭连接;它只是等到我手动停止测试,此时服务器日志显示客户端已断开连接。
我还有一个响应断言,它会查找这个字符串:
{"SERVER":[{"End":200}]}\r\n
Assertion设置为应用于主样本和子样本,要测试的响应字段设置为Text Response。
将模式匹配规则设置为Equals,我得到:
Device Server Sampler
Device Server Response Assertion : Test failed: text expected to equal /
****** received : {"SERVER":[{"End":200}]}[[[
]]]
****** comparison: {"SERVER":[{"End":200}]}[[[\r\n]]]
/
如果我将模式匹配设置为Contains,我得到:
Device Server Sampler
我现在只能假设是通过? 但无论我如何尝试它,JMeter永远不会关闭套接字,所以当我自己停止测试并在表中查看结果时状态被标记为警告,即使已经接收到正确的字节数,并且数据是正确的。
JMeter似乎不喜欢\r\n
所以我运行相同的测试从两侧的字符串中删除那些,但是套接字仍然保持打开状态,直到我停止测试。
有任何想法可能是什么问题?
答案 0 :(得分:2)
在TCP Sampler
我需要将End of line(EOL) byte value
设置为10
,这是\n