我想知道我错过了什么,但是我使用 @Timeout 的 JUnit 5 测试在它应该失败的时候并没有失败。
这是我的测试课:
package tests;
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Timeout;
import main.SomeClass;
class SomeUtilsTest {
@Test
@Timeout (5)
void testSomething() {
assertEquals (1, SomeClass.doSomething());
}
}
这是我正在测试的课程:
package main;
public class SomeClass {
public static Integer doSomething() {
while (true);
}
}
它应该会在五秒后失败,但无论我等多久,测试都不会失败;程序继续“运行”,我只能手动终止它。