我必须将测试从 JUnit 4 迁移到 JUnit 5,我有 @Rule 设置 EnvironmentVariables 变量。在 Junit 4 中,每个测试的变量都被清除,在 JUnit 5 中,我需要相同的行为,因为现在运行的测试是单独通过的,但是当我从类中运行所有测试时,第二个测试会失败,因为仍然具有相同的环境变量。
我有:
@Rule
public final EnvironmentVariables environmentVariables = new EnvironmentVariables();
@Test
void method1(){...}
@Test
void method2(){...}
Run Code Online (Sandbox Code Playgroud)
我还不熟悉 Junit 5 所以提前感谢您的帮助
Kov*_*cic -3
我认为您的关键字有问题final。删除它,它应该可以工作,
尝试这样:
@Rule
public EnvironmentVariables environmentVariables = new EnvironmentVariables();
Run Code Online (Sandbox Code Playgroud)
Final = 定义一个只能被赋值一次的实体
所以从我的角度来看,这扰乱了你的跑步。
希望这可以帮助,