java—如何使用JUnit5和mockito测试dao的void方法

hivapdat  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(248)

我有一个dao类,它有一个void类型的方法,我想把junit传递给它。
在寻找信息时,我发现用mockito可以做到。
但我已经到了不知道如何继续下去的地步。
这是我的刀课

public class AuditoriaDAOImpl {

    private DataSource dataSource;

    public void guardarAuditoria(AccionesAuditoria accion, String data) {

        String sql = "INSERT INTO ....";
        Map<String, Object> parametros = new HashMap<>();
        ......

        new NamedParameterJdbcTemplate(dataSource).update(sql.toString(), parametros);
    }
}

我的测试课

@ExtendWith(MockitoExtension.class)
class AuditoriaDAOImplTest {

    @Mock
    private DataSource dataSourceMock;

    @Mock
    private AuditoriaDAOImpl auditoriaDAO;

    @BeforeEach
    public void setUp() throws SQLException {

    }

    @Test
    void testGuardarAuditoria() {
        auditoriaDAO.setDataSource(dataSourceMock);
        auditoriaDAO.guardarAuditoria(AccionesAuditoria.IMPORTAR_JUEGO, new String("test"));
    }

}

一旦我完成了这行

auditoriaDAO.guardarAuditoria(AccionesAuditoria.IMPORTAR_JUEGO, new String("test"));

我不知道我能做些什么来验证这个方法的正确功能。
有什么想法或建议吗?
正在使用的软件:
java 8
junit 5.6.3版
Mockito3.5.0
非常感谢

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题