2016-05-04 24 views
0

我的jmeter測試計劃有一點問題。 我有一個JDBC請求從這個sql查詢我檢索姓和名中提取客戶在SQL數據庫 只 之後,我有一個BeanShell的小腳本寫我的所有客戶在一個CSV文件:Jmeter豆殼腳本 - 波蘭名和姓

f = new FileOutputStream(vars.get("InputFilePath")); 
p = new PrintStream(f); 

nb_customer=Integer.parseInt(vars.get("NOM_#")); 

for (i=1;i<=nb_customer;i++) { 
       p.println(vars.get("NOM_"+i) + ";" + vars.get("PRENOM_"+i)); 
} 

p.close(); 
f.close(); 

我的問題是,它是我們的子公司在波爾卡 的應用程序,所以所有客戶的名字都用不同的符號,字符在波蘭語中。 在csv文件中,它們會出現一個?儘管真實的性格。

你能幫助我嗎?

非常感謝

+0

也許您正在使用,以打開該文件的編輯器配置不正確?你爲什麼不嘗試用記事本++打開它,例如 –

+0

非常感謝你的回答。我用Notepad ++打開我的csv文件。 –

+0

很高興幫助 –

回答

0
  1. 嘗試明確設置編碼UTF-8,初始化爲PrintStream爲:

    p = new PrintStream(f, true, "UTF-8"); 
    
  2. 退房JMeter的默認編碼爲:

    log.info(System.getProperty("file.encoding")); 
    

    Encoding

    如果輸出爲UTF-8個不同的下一行添加到system.properties文件(生活在你安裝Jmeter的/ bin文件夾:

    file.encoding=UTF-8 
    

    ,並重新啓動JMeter的。另外,可以通過-D命令行參數傳遞給它這樣的:

    jmeter -Dfile.encoding=UTF-8 
    

    上的JMeter屬性和設置,並覆蓋它們的方式的詳細信息,請參閱Apache JMeter Properties Customization Guide

  3. 在JMeter的自身檢查文件內容通過FileUtils.readFileToString()方法,如:

    From File

+0

嗨迪米特里,非常感謝您的回答,併爲延誤感到遺憾,但我失業了。我試過你的配置。 1和2對我和我的csv文件都很好,波蘭語字符顯示的很好,但是當我使用$ {NOM} jmeter變量填充名稱字段時,波蘭語字符顯示爲方形字符。我試了3看看角色是否顯示正確,但在這一點上呢?顯示的字符。在我的例子中,polishChars是:MOSTYŁZDZISŁAW,在日誌中有MOSTY?ZDZIS?AW。非常感謝你的幫助。 Ludo –

+0

即使應用了「UTF-8」提示?這很奇怪。 –

+0

是的,但是在我的csv文件名和名字是正確的,但在測試後在名稱字段方塊出現我修改了系統屬性文件,並在我的腳本(BSF採樣器)這行改變:p = new PrintStream(f,true ,「UTF-8」);非常感謝 –