2016-12-29 156 views
1

我想從CSV讀取變量並將該值用於其他變量。 例子: 我有一個變量: ${url}: wwww.$(value_from_csv}.comJmeter:從csv讀取變量並將其傳遞到另一個變量中

和輔助URL ${url}/xyz

在我的JMeter腳本,$ {} value_from_csv不通過。

我缺少什麼?

+0

嘗試使用'__evalVar'函數。這裏是我的詳細解答http://stackoverflow.com/a/41287325/2575259 –

+0

謝謝。有效。但MongoDB源代碼配置不從CSV中讀取變量。例如: **服務器地址列表:$ {address_from_csv} ** 但它不讀取csv中的變量。 _錯誤 - jmeter.JMeter:未捕獲的異常:java.lang.IllegalStateException:java.net.UnknownHostException:$ {address_from_csv}:節點名稱或服務名稱提供,或不知道_ 你能幫助我嗎? –

+0

我完全不理解這個問題。請添加所有必要的細節。像測試計劃,您在哪裏定義'address_from_csv'以及如何使用它等。 –

回答

1

觀察發現CSV Dataset Config值不通過(不適用),以任何配置元素,而不管JMeter的測試計劃的組成部分(配置元素)的順序(檢查與User Defined Config & MongoDB Source Config),但傳遞給取樣。

因此,建議OP在jmeter.properties中定義值而不是CSV文件,因此我們可以在MongoDB Source Config中訪問user.host

步驟:

  1. 添加user.host=addressjmeter.properties
  2. 重新啓動的JMeter
  3. Server Address List場添加${__P(user.host,)}MongoDB Source Config

注:從詹金斯運行JMeter的腳本的情況下,酒店將被腳本從jmeter.properites文件中挑選出來。

+0

https://s24.postimg.org/8cudoufwl/Screen_Shot_2016_12_29_at_2_20_03_PM.png 我不認爲這個問題是因爲訂購,請參考屏幕截圖瞭解更多信息 –

+0

謝謝同時請分享CSV文件內容和CSV數據集配置截圖 –

+0

這裏是截圖csv數據集配置https://s30.postimg.org/51sc10mzl/Screen_Shot_2016_12_29_at_2_28_51_PM.png 我的腳本中使用的其他變量工作正常,除了在MongoDb源配置中使用的變量。所以,我認爲問題是與mongodb配置。 謝謝 –

0

MongoDB源配置初始化之前任何JMeter變量,所以使它成爲動態的唯一方法是使用JMeter屬性代替。

您可以通過兩種方式設置JMeter的屬性:

  1. 定義它user.properties文件,如:

    server.address.1=some.ip.or.hostname.1 
    server.address.2=some.ip.or.hostname.2 
    
  2. 通過-J命令行參數傳遞一樣的屬性:

    jmeter -Jserver.address.1=some.ip.or.hostname.1 -Jserver.address.2=some.ip.or.hostname.2 .... 
    

有關使用JMeter屬性的更多信息,請參閱Apache JMeter Properties Customization Guide

+0

已經由Naveen解決了。不管怎樣,謝謝你 –

相關問題