gpt4 book ai didi

java - assertEquals() 失败的原因

转载 作者:行者123 更新时间:2023-11-30 07:21:42 25 4
gpt4 key购买 nike

即使两个字符串相同,assertEquals() 也会失败...有人能帮我弄清楚为什么吗?

 public void testSet() 
{
ByteArrayOutputStream outContent = new ByteArrayOutputStream();

System.setOut(new PrintStream(outContent));

instance.get();

String output = outContent.toString();
String input="i=1\r\n";
assertEquals(input,output);
}

get()
{
int i=1;
System.out.println("i="+i);
}

最佳答案

您在 get() 方法中的打印语句中使用了 newline,该方法在输出缓冲区中附加了 \r\n。这样你就会得到 `output = "i=1\r\n"不等于 "i=1"。

使用 不带换行符的打印,即 print(),如下所示:

 System.out.print("i="+i);

如果您不想使用 print() 方法,则从输出中截断 \r\n,如下所示:

    String output = outContent.toString();
output = output.replaceAll("\r\n", "");
String input="i=1";
assertEquals(input,output);

关于java - assertEquals() 失败的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13213668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com