gpt4 book ai didi

spring - 通过 Spring 上下文更改 JUnit 测试的区域设置

转载 作者:行者123 更新时间:2023-12-02 17:50:57 25 4
gpt4 key购买 nike

所有测试均由 gradle 启动。我想为项目上的所有 JUnit 测试定义区域设置。一开始我想到了下面的办法:

public class TestCases {
static Locale defaultLocale = Locale.getDefault();

@BeforeClass
public static void setDefaultLocale() {
Locale.setDefault(Locale.UK);
}

// here goes bunch of tests
// ...

@AfterClass
public static void restoreLocale() {
Locale.setDefault(defaultLocale);
}
}

但是太麻烦了,因为我有数百个文件需要更改。我还发现使用 -Duser.language=en 参数(我使用 Intellij)运行单个测试就可以完成这项工作。但我无法更改 gradle 脚本来提供此解决方案。有没有办法通过 Spring 上下文为 JUnit 测试定义 Locale?或者也许还有其他更好的方法?谢谢。

最佳答案

实现此目的的一种方法是添加一个测试生命周期 Hook ,该 Hook 在执行套件之前触发。

test.beforeSuite { TestDescriptor suite ->
System.setProperty('user.language', 'en')
}

关于spring - 通过 Spring 上下文更改 JUnit 测试的区域设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17194522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com