【发布时间】:2020-03-04 15:58:36
【问题描述】:
我想模拟这个 SQL 查询的结果:
public List<RiskFilters> findRiskFiltersByTerminalIdAndType(int terminal_id, String filter_class) {
String hql = "....";
TypedQuery<RiskFilters> query = entityManager.createQuery(hql, RiskFilters.class)....;
List<RiskFilters> riskFilters = query.getResultList();
return riskFilters;
}
我试过这个模型配置:
List<RiskFilters> riskFiltersList = new ArrayList<RiskFilters>();
riskFiltersList.add(new RiskFilters());
when(riskFilterService.findRiskFiltersByTerminalIdAndType(anyInt(), anyString())).thenReturn(riskFiltersList);
但我在这里得到了 NPE:
List<RiskFilters> filter_list = riskFilterService.findRiskFiltersByTerminalIdAndType(11, "BinCountryCheckFilter");
看起来模拟的参数不正确。您知道如何正确实施吗?
【问题讨论】:
-
你能告诉我们完整的测试方法吗?谢谢
-
还有 NPE 的堆栈跟踪。
标签: java spring spring-boot junit junit5