【发布时间】:2014-06-21 01:42:13
【问题描述】:
我试了下还是一样的错误:
我尝试了以下方法:
public interface InventorydetailQuery extends InventorydetailDAO {
public static final String GET_UNFIT_UNSORTED_INVENTORYDETAIL = "Inventorydetail.getInventorydetailUnfitUnsorted";
public static final String GET_UNASSIGNED_INVENTORYDETAIL_BY_DENOM_AND_SUBTYPE = "Inventorydetail.getUnassingedInventorydetailByDenomAndSubType";
public static final String GET_UNASSIGNED_INVENTORYDETAIL_BY_REEL = "Inventorydetail.getUnassingedInventorydetailByReel";
public static final String GET_UNFIT_INVENTORYDETAIL_BY_DENOM_AND_SUBTYPE = "Inventorydetail.getUnfitInventorydetailByDenomAndSubType";
public List<Inventorydetail> getUnfitUnsortedInventorydetail(
BigDecimal facevalue, String teamname, Integer fedofficekey);
public List<Inventorydetail> getUnassingedInventorydetailByDenomAndSubType (BigDecimal facevalue, String inventorySubType,
String inventoryType, String valuableType, Integer fedTeamKey);
public List<Inventorydetail> getUnfitInventorydetailByDenomAndSubType (BigDecimal facevalue, String inventorySubType,
String inventoryType, String valuableType, Integer fedTeamKey);
public List<Inventorydetail> getUnassingedInventorydetailByReel (BigDecimal facevalue, String inventorySubType,
String inventoryType, String valuableType, Integer fedTeamKey, Integer bpsreelkey);
}
@RunWith(MockitoJUnitRunner.class)
public class ServiceTest {
@Mock
private BPSReelQuery mockBPSReelQuery;
@Mock
private BpsreelDAOImpl reelDAO;
@Mock
private InventorydetailQuery mockInventorydetailQuery;
@Mock
private InventorydetailDAO mockInventorydetailDAO;
@Test
public void testgetBPSReels(){
when(mockBPSReelQuery.getBpsreelDetails(FED_TEAM_KEY, CURRENT_BUSINESS_DATE)).thenReturn(getBPSReelDetails());
List<ShiftReelImportedBean> shiftReelImportedBean = processReelsAutomaticModeService.getBPSReelDetails(FED_TEAM_KEY);
assertNotNull(shiftReelImportedBean);
verify(mockBPSReelQuery).getBpsreelDetails(FED_TEAM_KEY, CURRENT_BUSINESS_DATE);
}
@Test
public void testBalanceReel_Scenario1() {
ReelBalanceBean reelBalanceBean = createReelBalanceBean(VerificationConstants.RS_NORMAL, VerificationConstants.RS_FINISHED);
CPFirstRunBean cpFirstRunBean=new CPFirstRunBean();
RSNormalBean rsNormalBean=new RSNormalBean();
RecapBean recapBean = createRecapBean(BigDecimal.ZERO);
Bpsreel bpsReel = createBpsReel();
when(mockBPSReelQuery.store(bpsReel)).thenReturn(bpsReel);
when(mockBPSReelQuery.findBpsreelByPrimaryKey(any(Integer.class))).thenReturn(bpsReel);
List<Inventorydetail> inventoryDetailsList = createInventoryDetailsList();
when(mockInventorydetailQuery.getUnassingedInventorydetailByDenomAndSubType(reelBalanceBean.getFaceValue(),
VerificationConstants.INVENTORY_SUB_TYPE_UNSORTED, VerificationConstants.INVENTORY_TYPE_UNSORTED,
VerificationConstants.VALUABLE_TYPE_CURRENCY, FED_TEAM_KEY)).thenReturn(inventoryDetailsList);
verify(mockInventorydetailQuery).getUnassingedInventorydetailByDenomAndSubType(reelBalanceBean.getFaceValue(),
VerificationConstants.INVENTORY_SUB_TYPE_UNSORTED, VerificationConstants.INVENTORY_TYPE_UNSORTED,
VerificationConstants.VALUABLE_TYPE_CURRENCY, FED_TEAM_KEY);
}
}
仍然得到相同的异常。我们将不胜感激任何解决此问题的提示。
谢谢,
MS
【问题讨论】:
-
你能分享你的测试对象吗?
-
我建议声明你的对象在测试中并用@InjectMocks标记它。
-
如果您 (1) 不向我们展示您要测试的代码,(2) 不向我们展示如何您正在创建您正在尝试测试的对象,(3)不要向我们展示您的测试类中实际与您正在测试的对象交互的方法,以及(4)不要指出哪个你的测试实际上失败了?在您真正向我们展示失败的代码之前,这个问题是完全无法回答的。
-
抱歉,您仍然没有提供我们需要帮助您的所有信息。另外,代码太多了。简化你的问题。在这个过程中,你甚至可以自己找到答案。根据您提供的信息,无法判断您的测试对象是什么,更不用说该对象的问题所在了。