Java junit-预期值和实际值相同,但测试结果失败

Java junit-预期值和实际值相同,但测试结果失败,java,junit,Java,Junit,预期值和实际值相同,但在JUnit测试中测试结果失败。我不知道为什么会这样。附加代码和结果图像。更奇怪的是,即使源代码没有任何错误,包中也有错误标记。关于这一点的图片也附在后面)。我想这两件事是相互关联的。我怎样才能解决这个问题?谢谢。如果你需要更多的信息,请问我 package tests; import junit.framework.TestCase; import java.io.ByteArrayOutputStream; import java.io.PrintStream; im

预期值和实际值相同,但在JUnit测试中测试结果失败。我不知道为什么会这样。附加代码和结果图像。更奇怪的是,即使源代码没有任何错误,包中也有错误标记。关于这一点的图片也附在后面)。我想这两件事是相互关联的。我怎样才能解决这个问题?谢谢。如果你需要更多的信息,请问我

package tests;

import junit.framework.TestCase;
import java.io.ByteArrayOutputStream;
import java.io.PrintStream;
import net.n3.nanoxml.*;

public class NanoSetAttr3_wy_v1Tests extends TestCase {

    public void test0() throws Exception {
        //setattr3.out
        String result;
        ByteArrayOutputStream byteBuffer;

        byteBuffer = new ByteArrayOutputStream();
        System.setOut(new PrintStream(byteBuffer));
        try{
            SetAttr3_wy_v1.main(new String[] {});
        }catch (Throwable t) {
            t.printStackTrace(System.out);
        }
        result = new String(byteBuffer.toByteArray());
        assertEquals(result, "<FOO Weight=\"80\"/>");
    }

}
包测试;
导入junit.framework.TestCase;
导入java.io.ByteArrayOutputStream;
导入java.io.PrintStream;
导入net.n3.nanoxml.*;
公共类纳米ettr3_wy_v1测试扩展了测试用例{
public void test0()引发异常{
//setattr3.out
字符串结果;
ByteArrayOutputStream byteBuffer;
byteBuffer=新的ByteArrayOutputStream();
系统放样(新打印流(byteBuffer));
试一试{
SetAttr3_wy_v1.main(新字符串[]{});
}捕获(可丢弃的t){
t、 printStackTrace(系统输出);
}
结果=新字符串(byteBuffer.toByteArray());
资产质量(结果“”);
}
}

如果仔细观察预期窗口和实际窗口,您会发现预期窗口有两行,实际窗口有一行。这意味着预期输出有一个换行符,但实际输出没有


关于错误标记,请打开“问题”窗口了解详细信息(如果您没有使用Eclipse,则应该有类似的问题)。

如果仔细查看预期和实际窗口,您会发现预期窗口有两行,实际窗口有一行。这意味着预期输出有一个换行符,但实际输出没有


关于错误标记,请打开“问题”窗口了解详细信息(如果您没有使用Eclipse,应该会有类似的问题)。

看起来“预期”结果有一个换行符,而“实际”中没有。哦,谢谢!这就是原因。包中的错误标记呢?可能是IDE缓存的错误。尝试清理和构建包,看看这是否会消除错误。@Junghyun接受解决问题的答案是礼貌的。看起来“预期”结果有一个换行符,而“实际”中没有。哦,谢谢!这就是原因。包中的错误标记呢?可能是IDE缓存的错误。尝试清理和构建包,看看这是否会消除错误。@Junghyun接受解决问题的答案是礼貌的。