Caso de teste JUnit + Mockito

0 respostas
java
E

Bom, boa tarde gostaria de saber se alguém aqui primeiramente entende de JUnit + Mockito estou tendo que implementar no sistema que estamos fazendo atualmente na empresa e estava precisando de idéias, bom lendo sobre o assunto achei muito pouca coisas, gostariam que analisassem o que está abaixo e queria saber pra quem entende como vocês faria para mim ter uma ideia.

Um dos métodos que eu teria que cria um caso de teste:

`
@Service
public class AprovarFlexibilizacaoServiceImpl implements AprovarFlexibilizacaoService {

@Autowired
private Par12AntOperDiaAntecRepository par12AntOperDiaAntecRepository;

@Autowired
private Par13AntOperDiaAntecRepository par13AntOperDiaAntecRepository;

@Autowired
private Par19AntOperConsDtAntecRepository par19AntOperConsDtAntecRepository;

@Autowired
private Par32ParamTravaTxSprdMinRepository par32ParamTravaTxSprdMinRepository;

@Autowired
private Par34CanalXTravaRepository par34CanalXTravaRepository;

@Autowired
private Par38NegociacaoRepository par38NegociacaoRepository;

@Autowired
private Par41AntOperTotDispVencRepository par41AntOperTotDispVencRepository;

@Autowired
private FlexibilizacaoRepository flexibilizacaoRepository;

private static final String INDICADOR_TOTAL_NAO = "N";
private static final String STATUS_CONSULTA = "C";

private static final int SUCESSO = 0;

private static final int APROVADO_SEM_ALTERACAO = 1;
private static final int APROVADO_COM_ALTERACAO = 2;

private static final int TAXA_INFERIOR_TRAVA_32 = 23;
private static final int SPREAD_INFERIOR_TRAVA_32 = 24;
private static final int DT_OPER_MAIOR_HOJE = 25;
private static final int OPER_NAO_ENCONTRADA = 28;
private static final int FLUXOS_DIVERGENTES = 35;
private static final int STATUS_DIF_SIMULACAO = 41;
private static final int NAO_EXISTE_NEG = 53;
private static final int NEGOCIACAO_STATUS_INVALIDO_2_3 = 54;
private static final int NEGOCIACAO_STATUS_INVALIDO_4 = 55;

private void verificarTaxaSpreadMinimo(BigDecimal taxaProposta, BigDecimal spreadProposto, Date dataAntecipacao, Long canal)
		throws ParBusinessException {

	Par32ParamTravaTxSprdMin travaTaxaSpread = par32ParamTravaTxSprdMinRepository.obterTaxaSpreadMínimo(dataAntecipacao);
	if(travaTaxaSpread != null){
		Par34CanalXTrava bypass = par34CanalXTravaRepository.pesquisarCanalXTraxaExistente(travaTaxaSpread.getIdParamTravaTxSprdMin(), canal);

		if(bypass == null){
			if(taxaProposta != null && taxaProposta.compareTo(travaTaxaSpread.getParamTxMinima()) < 0 ){
				throw new ParBusinessException(TAXA_INFERIOR_TRAVA_32);
			}
			if(spreadProposto != null && spreadProposto.compareTo(travaTaxaSpread.getParamSpreadMinimo()) < 0 ){
				throw new ParBusinessException(SPREAD_INFERIOR_TRAVA_32);
			}
		}
	}
}

}
`

Como eu implementei por enquanto:

`
public class AprovarFlexibilizacaoServiceTest {

@Mock
Par32ParamTravaTxSprdMinRepository par32ParamTravaTxSprdMinRepository;

@Mock
Par34CanalXTravaRepository par34CanalXTravaRepository;

@Mock
Par32ParamTravaTxSprdMin par32ParamTravaTxSprdMin;

@Mock
Par12AntOperDiaAntec par12AntOperDiaAntec;

@Mock
ObterDesconto desconto;

@Mock
AprovarFlexibilizacaoDto dto;

@Mock
FlexibilizacaoRepository flexibilizacaoRepository;

@Before
public void setUp(){
	MockitoAnnotations.initMocks(this);
}

public void aprovarFlexibilizacaoTest () {
	
}

public void persistirFlexibilizacaoTest () {
	
}

public void persistirFlexibilizacaoAlteracaoTaxaTest (Par12AntOperDiaAntec par12, ObterDesconto desconto, AprovarFlexibilizacaoDto dto) throws ParBusinessException {
	
	//Mockito.when(par32ParamTravaTxSprdMinRepository.obterTaxaSpreadMínimo(new Date())).thenReturn(par32ParamTravaTxSprdMin);
	
}

@Test
private void verificarTaxaSpreadMinimo(BigDecimal taxaProposta, BigDecimal spreadProposto, Date dataAntecipacao, Long canal) throws ParBusinessException {
	
	Mockito.when(par32ParamTravaTxSprdMinRepository.obterTaxaSpreadMínimo(new Date())).thenReturn(par32ParamTravaTxSprdMin);
	Mockito.verify(par32ParamTravaTxSprdMinRepository, Mockito.atLeastOnce()).obterTaxaSpreadMínimo(new Date());
	
	Mockito.when(par34CanalXTravaRepository.pesquisarCanalXTraxaExistente(Mockito.anyLong(), Mockito.anyLong()));
	Mockito.verify(par34CanalXTravaRepository, Mockito.atLeastOnce()).pesquisarCanalXTraxaExistente(Mockito.anyLong(), Mockito.anyLong());
	
	Mockito.doThrow(new ParBusinessException(23));
	Mockito.doThrow(new ParBusinessException(24));
}

}
`

Criado 20 de abril de 2016
Respostas 0
Participantes 1