我有一个方法,它返回给定id权限
的组列表public List<Group> showGroups(int CompetenceId) {
Query query = entityManager.createQuery("from Group where competence_id = :id");
query.setParameter("id", CompetenceId);
List<Group> groups = query.getResultList();
return groups;
}
如何测试此方法?
答案 0 :(得分:1)
使用明确定义的数据集填充数据库,然后调用您的方法,并根据明确定义的数据集查看它返回的组列表是否应该返回。
无耻插件:DbSetup是一个很酷的免费开源库,有助于在执行测试之前设置数据库。
答案 1 :(得分:0)
你必须使用Easy Mock来创建模拟类,如果你在代码中弹出,那么你将不得不用
注释测试类@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:config/config.xml")
对于DAO课程来说,这似乎是一个很难的方法。
第二个选项是覆盖JUNit本身的DAO框架。
JdbcTemplate template = new JdbcTemplate() {
public int update(String sql)
{
return 1;
}
};
dao.setJdbcTemplate(template);
如上所示,在JdbcTemplate的情况下,你必须在hibernate中为Criteria Queries做这件事。