我正在尝试使用TCP Sampler在IMAP4之上创建自动测试 我没有使用Mail Reader Sampler,因为我需要允许注入纯IMAP4命令。 我的IMAP4服务器(与任何IMAP4服务器一样)希望通过CRLF(0D0A)接收任何IMAP4命令结束,所以我已经在Text to send区域中以新行(Enter)结束了我的命令。
我嗅到了流量,注意到JMeter在命令后只添加了LF(0A)(没有回车)
这里有什么我想念的吗? 如何强制JMeter TCP采样器在每个TCP命令结束时添加CRLF?
答案 0 :(得分:2)
使用XML-escaped解决了问题! http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references
在基于XML的JMX文件中,我明确地附加了0xD字符:
1 login 972557557566@is433.email.com a123456A
答案 1 :(得分:-1)
虽然我无法使用EOL修复工具,也没有使用XML方法,但我确实找到了以下帖子,它提供了另一种解决方案:http://community.blazemeter.com/knowledgebase/articles/268778-how-to-send-control-characters-using-the-jmeter-tc。一般的想法是做以下事情:
在BeanShell预处理器中,覆盖变量值,如下所示:
vars.put(" new_line_char",URLDecoder.decode(vars.get(" new_line_char")," ASCII")); vars.put(" carriage_return_char",URLDecoder.decode(vars.get(" carriage_return_char")," ASCII"));
在您的TCP采样器中,在行尾添加新变量
要发送到某个地方的一些数据$ {carriage_return_char} $ {new_line_char}