首页 > 解决方案 > Docker 容器中的文件 URI 断言失败

问题描述

我有以下 Junit 4.13 测试,可以在带有 openJDK11 的 macOS 11.0 上正常工作:

import java.io.File;    
import org.junit.Assert;
...

File testFile = new File("/test");
Assert.assertEquals("file:/test", testFile.getAbsoluteFile().toURI().toString();

相同的测试在 RHEL 7 docker 容器上失败,并出现以下错误:

org.junit.ComparisonFailure: expected:<file:/test[]> but was:<file:/test[/]>
    at org.junit.Assert.assertEquals(Assert.java:117)
    at org.junit.Assert.assertEquals(Assert.java:146)

为什么这在 docker 容器中失败了?方括号不是断言语句本身的一部分,但为什么它们会出现在断言失败消息中?

标签: javadockerfilejunitjava-11

解决方案


推荐阅读