我想对黄瓜jvm使用一个特性文件,它将保存用于测试的数据。
既然我必须指定一个dealId来加载,那么我该如何处理加载呢?
我的理解是,我需要“模拟”由模拟连接产生的连接和对象。
我分别看过Jmock,mockito和dbunit,但是我不知道该怎么做。
如有任何意见,我将不胜感激。
编辑注释
我添加了更多的代码,我们从数据库中检索一个对象。接下来,我们将遍历与交易相关的对象列表(多到一个),并将每笔贷款的金额添加到交易金额中。最后,我们确定了交易总额,然后才归还这笔交易。
那么,考虑到我想从一个特性文件中提供测试信息,我如何为这个方法编写一个Junit测试呢?
在一个“真实”的情况下,这是可行的,我们在我们的应用程序加载交易,并添加每个贷款的贷款金额,并将其设置到交易,然后返回它。但是我不明白如何为这个测试编写一个JUnit,因为我们必须从这个方法中的数据库中加载。
发布于 2012-08-07 11:22:15
将逻辑重构到您的Deal
类中,您根本不需要模拟数据库。另外,它更好的OO设计。
public Deal getDealById(Long dealId) {
return template.get(Deal.class, dealId);
}
public class Deal {
public BigDecimal recalculateTotalLoanAmount() {
BigDecimal totalAmount = new BigDecimal();
for (Loan tempLoan: deal.loanList)
totalAmount = totalAmount + tempLoan.amount;
setTotalAmount(totalAmount);
return totalAmount;
}
}
发布于 2012-08-09 07:12:46
https://stackoverflow.com/questions/11849338
复制相似问题