2017-09-06 63 views
0

我已經設置了TCP採樣器來傳遞XML數據並檢查返回。TCP中的Jmeter 500錯誤

我有適當的IP地址,端口號是正確的,數據已準備就緒。

不過,我一直得到這個錯誤:

Thread Name: BasicCheck 1-1 
Sample Start: 2017-09-06 00:12:59 UTC 
Load time: 3520 
Connect Time: 1 
Latency: 0 
Size in bytes: 0 
Sent bytes:0 
Headers size in bytes: 0 
Body size in bytes: 0 
Sample Count: 1 
Error Count: 1 
Data type ("text"|"bin"|""): text 
Response code: 500 
Response message: org.apache.jmeter.protocol.tcp.sampler.ReadException: Error reading from server, bytes read: 0 

響應頭:

SampleResult fields: 
ContentType: 
DataEncoding: windows-1252 

我知道服務器已啓動和運行,我把在TCP採樣地點的用戶名和密碼JMeter的。我只是不知道爲什麼我得到這個錯誤。

這是在一臺Windows機器(顯然)到一個直的TCP服務器。

+0

您是否嘗試過檢查關閉連接複選框? – user7294900

+0

連接需要保持打開狀態才能在第一個消息之後發送更多消息。 – Bill

回答

0

你需要做以下的事情,使這項工作:

  1. 在TCP採樣使EOL字節值= 10超時(毫秒)爲響應輸入值5000或10000
  2. 添加用戶定義要通過TCP採樣器作爲文本發送的變量。防爆。我想發送文本爲$ {STX} 2017105557 | SAMPLEMESSAGE | Message2 $ {ETX},因此STX和ETX是我的用戶定義變量。
  3. 添加一個Bean Shell預處理器將值轉換爲ASCII格式。

示例代碼:

[String STX = URLDecoder.decode(vars.get("STX"), "ASCII"); 
vars.put("STX",STX); 
String ETX = URLDecoder.decode(vars.get("ETX"), "ASCII"); 
vars.put("ETX",ETX);][1] 

的JMeter腳本應該是這樣的: TCP Sampler Jmeter script