我正在尝试使用 JUnit5 测试我正在设计的库。我已经到了需要断言某些内容是错误的地步,但是每当我尝试使用
assertFalse(...)
时,Gradle 都会遇到错误。
我正在将 JUnit 5.2 与 Gradle 5.1.1 一起使用,并尝试了适合我的需求的 assertFalse() 方法签名,但没有成功。这包括仅使用布尔条件、使用条件加消息、使用
Assertions.assertFalse(...)
删除静态导入等。
我已经能够将代码范围缩小到一个简单的测试。下面的代码失败了:
@Test
void test(){
assertFalse(false);
}
我的进口是:
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
//plus some others from the library
Gradle 给出错误:
ProjectDir/FTC_Robot_API/TeamCode
/src/test/java/org/firstinspires/ftc/teamcode/FTC_Library/Robot
/RobotBaseTest.java:28: error: cannot access BooleanSupplier
assertFalse(false);
^
class file for java.util.function.BooleanSupplier not found
1 error
我希望明显的布尔值(
false
)不是BooleanSupplier,所以我对为什么它给我这个错误感到困惑。任何帮助表示赞赏
JUnit 5 在运行时需要 Java 8(或更高版本)。在您的情况下,JUnit 使用从 Java 8 开始可用的
java.util.function.BooleanSupplier
。
我向你推荐:
.iml
目录和build directory
(maven中的目标目录)。idea
中设置项目的语言级别(文件 -> 项目结构 -> 语言 Lavel)。