2016-02-19 65 views
0

我必须编写一个JUnit测试。Java JUnit for xml文件

我正在生成XML文件并填充一些数据。 我的例子:

try { 

    DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); 
    DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); 

    // root elements 
    Document doc = docBuilder.newDocument(); 

    Element rootElement = doc.createElement("competition"); 
    doc.appendChild(rootElement); 

    for(int i = 0; i < dataList.size(); i++){ 

    // singleuser elements 
    Element singleuser = doc.createElement("singlerow"); 
    rootElement.appendChild(singleuser); 

    // participant elements 
    Element participant = doc.createElement("participant"); 
    participant.appendChild(doc.createTextNode(dataList.get(i).getData().getParticipantScores())); 
    singleuser.appendChild(participant); 

    // score elements 
    Element score = doc.createElement("score"); 
    score.appendChild(doc.createTextNode(dataList.get(i).getData().getFinalScore().toString())); 
    singleuser.appendChild(score); 

    // score elements 
    Element place = doc.createElement("place"); 
    place.appendChild(doc.createTextNode(dataList.get(i).getData().getPlace())); 
    singleuser.appendChild(place); 
    } 

    // write the content into xml file 
    TransformerFactory transformerFactory = TransformerFactory.newInstance(); 
    Transformer transformer = transformerFactory.newTransformer(); 
    DOMSource source = new DOMSource(doc); 
    StreamResult result = new StreamResult(new File("testXml.xml")); 

    transformer.transform(source, result); 
    System.out.println("File saved!"); 

} catch (ParserConfigurationException pce) { 
    pce.printStackTrace(); 
} catch (TransformerException tfe) { 
    tfe.printStackTrace(); 
} 

因此,这部分代码生成我的.xml文件..和eveyrthing是确定这一点。

但关于这部分JUnit测试..

我能考吗? 任何示例?

到目前为止,我发现Google搜索只是比较测试的简单字符串。

任何提示将非常有帮助。

我只能使用纯java 8 + JUnit。

回答

0

你可以测试任何事情和一切。最简单的方法是测试第一次开发:编写一个期望测试的测试;例如输出文件格式良好。然后写出最小数量的代码来通过。

然后编写一个测试,期望名称竞争的根元素。添加最少量的代码以使测试通过。

然后为singlerow元素编写测试,依此类推。迭代直到完成。

这里每个预期元素的一次测试可能就足够了。

请参阅Testing XML