Service 当我已经用Junit测试了Facade时,有必要测试DAO类吗?

Service 当我已经用Junit测试了Facade时,有必要测试DAO类吗?,service,junit,dao,facade,Service,Junit,Dao,Facade,我目前正在测试基于本教程的JSF Web应用程序。 Facade使用DAO方法控制事务 DAO JUnit测试是什么样子的?当我测试外观时,我甚至需要测试它们吗? 这是我如何测试Facade方法的一个示例 谢谢你的帮助 @Test public void newUserTest() { User user = new User (); userDAO.beginTransaction(); user.setUsername("Test"); user.setPas

我目前正在测试基于本教程的JSF Web应用程序。 Facade使用DAO方法控制事务

DAO JUnit测试是什么样子的?当我测试外观时,我甚至需要测试它们吗? 这是我如何测试Facade方法的一个示例

谢谢你的帮助

@Test
public void newUserTest() {
    User user = new User ();
    userDAO.beginTransaction();
    user.setUsername("Test");
    user.setPassword("123");
    userDAO.save(user);

    User user 2 = adminDAO.findUserWithUsername(admin.getUsername());

    assertEquals("Test", user2.getUsername());

    userDAO.rollback();
    userDAO.closeTransaction(); 
}

是的,您需要为DAO编写测试。更多的是与数据库的集成测试。最好对每行代码都进行测试

理想情况下,在Facade中,它应该是一个单元测试,您只需验证是否使用正确的参数调用了DAO