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

时间:2013-11-08 01:34:29

标签: java junit

预期值和实际值相同,但测试结果是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 compares results package error marks

1 个答案:

答案 0 :(得分:5)

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

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