【发布时间】:2021-10-30 03:46:41
【问题描述】:
JUnit assertEquals Changes String
简而言之:assertEquals("Hello World", "HelloWorld"); 在故障跟踪中显示为expected:<Hello[ ]World> but was:<Hello[]World>
伟大的。绝对没有浪费我的时间试图弄清楚为什么我的解析器会随机抛出方括号。
如何禁用此功能?
我正在为 Java 使用 Eclipse 4.19.0,JUnit 4.10。
【问题讨论】:
-
这不是问题,IMO - 并且字符串中的区别是除了空格之外的其他一些空格或不可见字符,这些括号可能会为您节省很多时间让您磨练更快地解决问题。
-
@crig 除了我可以双击故障跟踪中的消息并弹出一个突出显示颜色差异的窗口之外。我刚刚用空格和 nbsp 对其进行了测试,它按预期突出显示了空格。但是,在文本中间弹出魔法字符会造成视觉混乱。你能一眼看出这两个字符串之间的区别是什么吗?:
expected:<[?]`foo`> but was:<[%[]`foo`>如果你需要眯着眼睛看看哪个[是实际字符串的一部分,这不是问题。 -
在弹出的窗口中没有添加方括号,您可以通过右键菜单选择是否忽略空格以及是否显示空格字符。
-
@NikoO 扫描代码,我认为没有任何方法可以禁用此功能。你现在已经浪费了时间试图解决它,但你会知道未来的。抱歉,我无法为您提供解决方案,有时会出现这种情况。