所以我有一个经理-Dao,我想进行单元测试
public Bill createBill(Order order){
Bill bill = new Bill();
[...] do stuff
return dao.save(bill)
}
我想要的dao.save(bill)方法什么也不做,并返回创建的账单。不知道怎么做。
答案 0 :(得分:1)
看起来你想要returnsFirstArg
。
when(dao.save(any(Bill.class))).thenAnswer(AdditionalAnswers.returnsFirstArg());
答案 1 :(得分:-2)
有两种想法:
1。)扩展DAO并覆盖save方法以执行您想要的操作。 2.)编写DAO实现的接口,通过对接口的引用交换对DAO的引用,然后制作自己的“模拟”DAO,用于执行您希望它执行的单元测试。
第二个是更多的工作,但对我个人来说似乎更清洁。