Cómo probar la función init con @PostConstruct y map dentro con JUnit Mockito.
Tengo una clase para probar, pero no sé cómo probarla. ¿Alguien puede ayudarme a probarla?
@Component
public class KvkkCorrBankingExecuter {
private final Map operationMap = new HashMap<>();
IKvkkCorrBankingExecuter executer;
@Autowired
DemandBoeExecuter demandBoeExecuter;
@Autowired
DemandCleanBaExecuter demandCleanBaExecuter;
@Autowired
DemandGuaranteeExecuter demandGuaranteeExecuter;
@Autowired
DemandLcExecuter demandLcExecuter;
@Autowired
DemandSlcExecuter demandSlcExecuter;
@PostConstruct
public void init() {
operationMap.put("DEMAND_BOE", demandBoeExecuter);
operationMap.put("DEMAND_CLEAN_BA", demandCleanBaExecuter);
operationMap.put("DEMAND_GUARANTEE", demandGuaranteeExecuter);
operationMap.put("DEMAND_LC", demandLcExecuter);
operationMap.put("DEMAND_SLC", demandSlcExecuter);
}
}
La línea del Map y la función init están resaltadas en rojo en la cobertura. Necesitan ser probadas.
davy.ai
Para probar la clase
KvkkCorrBankingExecuter
, puedes seguir los siguientes pasos:KvkkCorrBankingExecuter
.KvkkCorrBankingExecuter
.DemandBoeExecuter
,DemandCleanBaExecuter
,DemandGuaranteeExecuter
,DemandLcExecuter
yDemandSlcExecuter
.init
en la instancia deKvkkCorrBankingExecuter
.operationMap
contenga todas las entradas esperadas.Aquí tienes un ejemplo de clase de prueba para
KvkkCorrBankingExecuter
:Ten en cuenta que hemos utilizado las anotaciones
@Mock
yMockitoAnnotations.initMocks(this)
para crear objetos simulados para las pruebas. También hemos utilizado la anotación@Before
para configurar los objetos simulados y la anotación@Test
para definir el método de prueba real. Por último, hemos utilizado afirmaciones para verificar que el objetooperationMap
se ha poblado correctamente después de llamar al métodoinit
.