更改junit测试的默认语言环境

时间:2014-12-05 22:02:19

标签: java junit internationalization

如何更改JUnit Test的默认语言环境。当前的语言环境是en。我想测试es_ES。 我试过了:

System.setProperty("locale", "es_ES");

但这似乎不起作用。

1 个答案:

答案 0 :(得分:26)

您可以使用Locale.setDefault设置默认Locale

  

设置此Java虚拟机实例的默认语言环境。这不会影响主机区域设置。

Locale.setDefault(new Locale("es", "ES"));

使用以下资源文件进行测试:

  • test.properties

    message=Yes
    
  • test_es_ES.properties

    message=Sí
    

这是我的主要功能,没有更改我的默认语言环境(en_US):

public static void main(String[] args)
{
    ResourceBundle test = ResourceBundle.getBundle("test");
    System.out.println(test.getString("message"));
}

输出:

Yes

这是我的主要功能,更改了您的测试区域设置(es_ES):

public static void main(String[] args)
{
    Locale.setDefault(new Locale("es", "ES"));
    ResourceBundle test = ResourceBundle.getBundle("test");
    System.out.println(test.getString("message"));
}

输出:

这应该适用于JUnit测试用例。