2016-03-02 79 views
1

我需要知道如何從jmeter中的響應中提取值並將其導出到csv文件。從jmeter響應中提取一個值並將其導出到csv文件

假設我的回答是這樣的:

<ns3:UpdateConsumerResponse 
     xmlns:ns3="http://Pandora.NextGenCRM.Integrations.UpdateConsumerResponse" 
     xmlns:ns0="http://tempuri.org/" 
     xmlns:ns1="http://schemas.datacontract.org/2004/07/Pandora.Xrm.DataModel.Request" 
     xmlns:ns2="http://schemas.datacontract.org/2004/07/Pandora.Xrm.DataModel.Response"> 
    <MasterConsumerID> 
     CRM-CONID-000000519344 
    </MasterConsumerID> 
</ns3:UpdateConsumerResponse> 

我需要提取主的消費值,並將其導出爲一個CSV文件。

回答

3

所有你需要添加一個正則表達式提取,因爲這要求 的孩子,然後首先提到下面輸入

1.Reference名稱:MasterConsumer(或任何變量)

2。正則表達式:abc(。*?)d(假設你的值是abc CRM-CONID-000000519344 d 然後提供的reg ex將會工作,現在用你的左邊的 邊界代替abc,並且右邊界可以從你的迴應中得到。你需要更多的幫助,然後 請提供這個v ALUE從兩側多個文本)

3.Template沿:$ 1 $

4.Match號:1

5.Default值:空

現在你有你的價值存儲在MasterConsumer變量中(應用調試採樣器進行驗證)。只要你需要編寫成csv文件,所以加BeanShell的後處理器爲同一請求的孩子,下面寫的打印數據代碼轉換成csv文件

MasterConsumer =vars.get("MasterConsumer"); 
f = new FileOutputStream("Path"-Output.csv",true); 
p=new PrintStream(f); 
this.interpreter.setOut(p); 
p.println(MasterConsumer); 
f.close(); 
+0

感謝reply.i試過這樣做,但我在csv文件中只能看到「null」。masterconsumer不是開玩笑克提取正確。調試採樣器中的 – priya

+0

masterconsumer變量的值爲空 – priya

+0

這意味着常規exp不能正常工作。所以請給我提供包含要提取的值的響應以及來自兩端的幾個詞,即提供限制 –

2
  1. 添加XPath Extractor作爲請求的孩子,它返回上述值
  2. ,將其配置如下:

    • 檢查Use Namespaces
    • 參考名稱:任何有意義的事,也就是ID
    • XPath查詢:/ns3:UpdateConsumerResponse/MasterConsumerID/text()
  3. 添加Beanshell PostProcessor後的XPath提取
  4. 添加以下代碼到後處理的 「腳本」 區域:

    import org.apache.commons.io.FileUtils; 
    
    String file = "path_to_your_file.csv"; 
    String ID = vars.get("ID"); 
    String newline = System.getProperty("line.separator"); 
    
    FileUtils.writeStringToFile(new File(file),ID + newline, true); 
    
相關問題