簡體   English   中英

詹金斯·馬文(Jenkins Maven)Job Charset

[英]Jenkins Maven Job Charset

我正在使用Spring Test來測試我的Spring Application,這基本上是一個REST Web服務,提供JSON和其他一些上傳的媒體。

單元測試在所有開發人員的機器上都可以正常工作,其中一些測試在JSON響應中返回的字符串,其中一小部分測試特殊字符。

該應用程序已完全配置為對所有內容都使用UTF-8,但是JSON響應返回的字符集錯誤,因此測試失敗。

我試圖在/etc/default/jenkins配置以下行:

JAVA_ARGS="-Djava.awt.headless=true -Dfile.encoding=UTF8"

但是我仍然得到相同的結果。

當運行特定的測試時,我也有機會看到Charset.defaultCharset()是什么...它看起來像US-ASCII ...

有人可以告訴我我在做什么錯嗎?

我發現了問題所在。

在我的Spring Test配置中,我正在讀取DML.sql文件以創建初始測試數據,並且初始化數據庫的行是這樣的:

<jdbc:initialize-database data-source="dataSource">
    <jdbc:script location="classpath:sql/DML.sql" />
</jdbc:initialize-database>

這使我的配置依賴於服務器字符集,在我的情況下,我在服務器中設置了奇怪的“ US-ASCII”。

我通過將encoding屬性設置為UTF-8使其獨立:

<jdbc:initialize-database data-source="dataSource">
    <jdbc:script location="classpath:sql/DML.sql" encoding="UTF-8" />
</jdbc:initialize-database>

因此,可以針對具有特殊字符的值測試來自H2數據庫的值。

暫無
暫無

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

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