2013-08-04 60 views
6

我正在嘗試使用TCP採樣器在IMAP4上創建自動測試。
我沒有使用郵件閱讀器取樣器,因爲我需要允許注入純粹的IMAP4命令。 我的IMAP4服務器(與任何IMAP4服務器一樣)希望以CRLF(0D0A)接收任何IMAP4命令,因此我在文本中用新行結束了命令(輸入)。缺少CR-TCP採樣器

我聞交通,發現JMeter的指令後只加LF(0A)(沒有回車)

有沒有,我很想念這裏的東西嗎?
如何強制JMeter TCP採樣器在每個TCP命令末尾添加CRLF?

回答

-1

雖然我不能讓EOL修復工作,也不是XML的方法,我也發現以下其中提供了另一種解決方案:http://community.blazemeter.com/knowledgebase/articles/268778-how-to-send-control-characters-using-the-jmeter-tc。總體思路是做到以下幾點:

  1. 創建名爲'new_line'和'carriage_return'的用戶定義變量。
  2. 分別將這些用戶定義的變量設置爲%0A和%0D。
  3. 在你的tcp sampler之前,創建一個BeanShell PreProcessor。
  4. 在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」));

  5. 在您的TCP採樣,包括在你行的末尾新的變量

    一些數據發送給一些地方$ {carriage_return_char} $ {} new_line_char