/* * * Copyright (c) 2013 - 2014 INT - National Institute of Technology & COPPE - Alberto Luiz Coimbra Institute - Graduate School and Research in Engineering. * See the file license.txt for copyright permission. * */ package cargaDoSistema; import modelo.HP; import modelo.PerioPAP; import modelo.PerioPM; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import service.HPAppService; import service.PerioPAPAppService; import service.PerioPMAppService; import service.controleTransacao.FabricaDeAppService; import service.exception.AplicacaoException; import util.JPAUtil; public class CargaHP { private static PerioPMAppService perioPMService; private static PerioPAPAppService perioPAPService; private static HPAppService hpService; // A anota�ao @BeforeClass � necess�ria para criar os services // que serao responsaveis pela excu�ao dos metodos das classes // AppService. Apos a excu�ao do metodo setupClass que fora anotado // como @BeforeClass os demais metodos da classe de teste serao executados. @BeforeClass public void setupClass(){ try { perioPMService = FabricaDeAppService.getAppService(PerioPMAppService.class); perioPAPService = FabricaDeAppService.getAppService(PerioPAPAppService.class); hpService = FabricaDeAppService.getAppService(HPAppService.class); } catch (Exception e) { e.printStackTrace(); } } // O parametro "groups" serve para estabeleler uma ordem de precedencia // ENTRE os metodos da classe de teste(CargaHP). Exemplo: @Test (groups="inclusao") @Test//(groups = "inclusao") public void incluirHP() throws AplicacaoException{ //System.out.println(">>>>>>>>>>>>>>>>>> Passou no incluirHP 4"); PerioPM perioPMInicial = null; PerioPM perioPMFinal = null; PerioPAP perioPAPInicial = null; PerioPAP perioPAPFinal = null; try { perioPMInicial = perioPMService.recuperaPerioPMPorPeriodoPM(1); perioPMFinal = perioPMService.recuperaPerioPMPorPeriodoPM(10); perioPAPInicial = perioPAPService.recuperaPerioPAPPorPeriodoPAP(perioPMInicial.getPeriodoPM()); perioPAPFinal = perioPAPService.recuperaPerioPAPPorPeriodoPAP(perioPMFinal.getPeriodoPM()); } catch (AplicacaoException e) { } HP hp = new HP(); // ---------------- PLANO MESTRE -----------------// hp.setPerioPMInicPMP(perioPMInicial); hp.setPerioPMFinalPMP(perioPMFinal); // ---------------- DEMANDA MODELO -----------------// hp.setPerioPMInicDemMod(perioPMInicial); hp.setPerioPMFinalDemMod(perioPMFinal); // ---------------- PLANO AGREGADO -----------------// hp.setPerioPAPInicPAP(perioPAPInicial); hp.setPerioPAPFinalPAP(perioPAPFinal); // ---------------- DEMANDA FAMILIA -----------------// hp.setPerioPAPInicDemFam(perioPAPInicial); hp.setPerioPAPFinalDemFam(perioPAPFinal); hpService.inclui(hp); } // A anota�ao dependsOnGroups obriga o metodo que possua esta anota�ao ser // executado apos axecu�ao dos metodos que fa�am parte do grupo inclusao. // Exemplo: @Test (dependsOnGroups = "inclusao") @Test public void inicializarHP() throws AplicacaoException{ //System.out.println(">>>>>>>>>>>>>>>>>> Passou no incluirHP 5"); hpService.iniciaPlanejamento(); } // ATEN�AO: // EMBORA A NOSSA SUITE DE TESTE POSSUA A PROPRIEDADE preserve-order="true" // O QUE A PRIORI DEFINIRIA A ORDEM DE EXECU�AO COMO FOI DEFINIDA NO ARQUIVO // testng.xml O FATO DE ANOTARMOS ESTA CLASSE DE TESTE(CargaHP) COM GROUPS ISTO // FAZ COM QUE A CARGA DE TESTE CargaHP SEJA PRIORIZADA NA ORDEM DE EXCU�AO DA // NOSSA SUITE O QUE CERTAMENTE PROVOCARA UM ERRO. PARA EVITARMOS ESTE PROBLEMA // TIRAMOS AS ANOTA�OES DE TODAS AS CLASSES DE TESTE DO PACKAGE CargaDoSistema. }