DAO中方法的单元测试

时间:2013-03-08 06:18:37

标签: java junit junit4

在DAO中,查询返回我和List<Object[]>

我已经成为ABC了

protected String Name;
protected Integer AGE;

和它的吸气剂和制定者。

这是我的DAO方法

List<ABC> list = new ArrayList<ABC>();
if(result!=null && !result.isEmpty())
{
    Iterator dataIter = result.iterator();
    while(dataIter.hasNext()) 
    {
    Object[] row = (Object[]) dataIter.next();
    ABC abc = new ABC();
    abc.setName((String)row[0]);
    abc.setAGE((Integer)row[1]);
    list.add(abc);
    }
}

return list;

如何为此方法编写JUNit测试。通过Junit,我可以检查返回列表是否为空,但如果我想检查列表中的内容,该怎么办。

1 个答案:

答案 0 :(得分:1)

您可以使用assertEquals检查返回的值是否已更正

@Test
public void testListOfABC() throws DAOException {
    // Declare your DAO 


    List<ABC> lstABC = dao.yourFunction();

    // check if it is null
    assertNotNull(lstABC);

    // check if the returned list have enough values 
    assertEquals(lstABC.size(), 3);

    // check if each value is corrected 
    assertEquals(lstABC.get(0).getName(), "firstname");
    assertEquals(lstABC.get(0).getAGE(), 25);
    // and so on   

}

通常,我们会准备一个测试数据集(例如,在您的情况下,“firstname”或25),因此,在运行时,我们知道每个单元测试的预期结果。