2010-11-17 92 views
0

從我可以告訴,有沒有辦法來加載從一個特定的語言環境語言文件中的字符串。的Android - 單元測試本地化

我想要做的是通過單元測試運行我的所有語言環境(我有他們的24),時間格式字符串,以確保它們不會崩潰。例如,以下是法語中的日期格式字符串:「'Hierà'h:mm a」。

這些真正需要的是單元測試,因爲翻譯不是很大約正確轉義這些字符串,導致崩潰,除非我們手動每次我們得到一個翻譯傳回時驗證每一種語言每個字符串。

This question有一個排序的答案。這真的是唯一的方法嗎?在單元測試中有更好的方式來指定Context的語言環境嗎?

回答

1

Robolectric從V2.0阿爾法支持這種3.在這裏看到:

http://robolectric.blogspot.com/2013/05/robolectric-20-alpha-3.html

所有你需要做的是一個註釋添加到您的測試方法:

@Test @Config(qualifiers = "fr") 
public void testGetValuesResFromSpecificQualifiers() { 
    assertThat(resources.getString(R.string.hello)).isEqualTo("Bonjour"); 
}