簡體   English   中英

如何捕獲Bean Shell采樣器的響應

[英]How to capture response of a Bean shell sampler

在此處輸入圖片說明

上面是我寫的代碼,以命中某個Web服務,其端點期望一個Byte Stream對象。 我能夠做到這一點,但沒有得到任何回應。 我必須測試響應。 雖然我得到200 ok,但是響應中沒有得到一個字符串。 在此處輸入圖片說明

在此處輸入圖片說明

響應為空白 在此處輸入圖片說明

如何獲得回復?

您可以使用SampleResult對象添加輸出:

String output = "...";

SampleResult.setResponseData( output );
SampleResult.setDataType( org.apache.jmeter.samplers.SampleResult.TEXT );
  1. 為了讀取服務器的響應,您需要使用URLConnection.getInputStream()方法 ,而不是OutputStream
  2. 為了將流轉換為字符串,可以使用IOUtils.toString()方法
  3. 為了返回數據,您可以使用return關鍵字
  4. 最小的工作代碼如下,根據您的需要進行調整:

     import java.net.HttpURLConnection; import java.net.URL; import java.nio.charset.StandardCharsets; import org.apache.commons.io.IOUtils; URL url = new URL("http://example.com"); HttpURLConnection con = (HttpURLConnection) url.openConnection(); con.setRequestMethod("GET"); String response = IOUtils.toString(con.getInputStream(), StandardCharsets.UTF_8); return response; 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM