2010-10-22 59 views
6

我想做JMeter分佈式測試。在手冊中說過,首先我應該在遠程節點上啓動jmeter-server,然後我應該在主節點上更新jmeter.config並運行jmeter我應該在遠程工作站上爲分佈式JMeter測試添加一個CSV配置文件?

我完成了所有這些步驟。我的測試計劃包括使用CSV配置文件。如果我只從1(主)節點進行測試 - 那麼一切都起到魅力的作用。但是當我嘗試分佈式測試時,所有測試失敗。一些調查顯示,遠程節點發送請求時未取代類似${..}的參數。請求看起來像

POST數據: 5 | 0 | 6 |的http://host.com/portal/ | 67D1C612DCF291DCD0F71AD15E404F37 | host.ui.client.services.LoginService |登錄| java.lang.String中/ 2004016611 | $ {ADMIN_LOGIN} | 1 | 2 | 3 | 4 | 3 | 5 | 5 | 5 | 6 | 6 | 1 |

很明顯,遠程jmeter-server找不到CSV文件。我應該把它放在哪裏?

P.S:我有不同操作系統的機器(Windows 7和Ubuntu 10.04)。

+0

您是否找到可行的解決方案? – BlackGaff 2010-11-18 22:18:21

回答

2

將完整路徑和文件名放入'CSV Data Set Config'組件中,​​例如。 c:\loadtest\config.csv並確保您將CSV文件放在指定的位置。


組件manual還規定如下:

相對文件名是相對於主動測試計劃的路徑解決。

因此應該可以將文件放在與測試計劃文件相同的目錄中。這應該可以在Linux和Windows上運行。

+1

那麼Ubuntu呢?是否有可能在同一時間對不同操作系統的機器進行測試? – Roman 2010-10-22 12:58:26

+0

你知道,我剛剛試圖設定絕對路徑,因爲你建議,是的,它的工作原理。但是,Linux/Windows的差異存在問題。 – Roman 2010-10-22 13:03:06

+0

我已經添加了一些關於相對路徑的內容。 – 2010-10-22 13:07:45

1

對數據文件的任何引用都假定這樣的文件存在於指定路徑中的各個節點中。例如,如果您的CSV文件在C:\ data中,那麼當您以分佈方式執行測試計劃時,測試計劃將在節點(從屬設備)的C:\ data中查找數據文件。

實際上,如果您使用的是10臺從機,則需要在所有這10臺機器中都有c:\ data文件夾。

沒有必要複製測試計劃。

5

解決多操作系統問題的最簡單方法是將CSV文件放在所有測試機器上的Jmeter BIN目錄中,並且不要在CSV數據集配置組件中引用路徑。

0

EDITED因爲文檔引用錯了 - 我被我自己的答案:)

老問題燒燬,但我只是碰到了這個問題,這裏的答案是相互矛盾的。

是否將相對路徑解析爲bin /目錄或當前.jmx測試腳本的目錄?

答案:它只是測試腳本的目錄。從文檔:

相對文件名與 對於有源測試計劃的路徑解決。也支持絕對文件名爲 ,但請注意,它們不太可能在遠程 模式下工作,除非遠程服務器具有相同的目錄結構。如果 以兩種不同的方式引用相同的物理文件 - 例如, csvdata.txt和./csvdata.txt - 然後這些被視爲不同的 文件。如果操作系統不區分大寫和小寫, csvData.TXT也將單獨打開。

相關問題