0

我是 XML 新手。经过大量搜索后,我发现 XMLUnit 可以做到这一点,但问题是:每当我将 xml 文件的内容更改为简单的字符串文本并尝试执行代码时,它在 junit 测试中仍然显示为绿色它不应该这样做,尽管它会引发异常,但我的要求是即使文件不是正确的 xml 格式,信号也应该是红色的。到目前为止,我的工作已经结束。

package mypack;

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.List;

import org.custommonkey.xmlunit.DetailedDiff;
import org.custommonkey.xmlunit.Diff;
import org.custommonkey.xmlunit.XMLTestCase;
import org.custommonkey.xmlunit.XMLUnit;
import org.junit.Test;
import org.xml.sax.SAXException;

public class MyXMLTestCase extends XMLTestCase {


    enter code here
    @Test
    public void testMyXmlTestCase() {
        FileReader expected = null;
        FileReader output = null;
        try {
            expected = new FileReader("D:/vivek.xml");
            output = new FileReader("D:/rahul.xml");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        XMLUnit.setNormalizeWhitespace(Boolean.TRUE);
        try {
            Diff diff = new Diff(expected,output);
            // assertTrue("XMLSimilar"+diff.toString(),diff.similar());
            //assertTrue("XMLIdentical"+diff.toString(),diff.identical());
            DetailedDiff mydiff = new DetailedDiff(diff);
            List allDifferences = mydiff.getAllDifferences();
            assertEquals(mydiff.toString(), 0, allDifferences.size());

        } catch (SAXException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
4

0 回答 0