Spring (Testando classe de negocio atraves do springxjunit)

1 resposta
F

Boa noite,
estou com seguinte problema criei uma classe para fazer teste unitarios atraves do spring, porem esta dando erro no pach do meu xml.

protected String[] getConfigLocations() {

// return new String[]{“WEB-INF/spring/context-*.xml”};

return new String[]{classpath:WEB-INF/spring.xml};

}

esse metodo que retorna meu patch, e ja tendei divercas maneiras hehehe…
a estrutura se encontra assim
C:\Fernando\workspace\MetroRio\tmp\war\WEB-INF
aqui estao meus xml inclussive do spring.

quando executo a classe para efetuar o test da erro de io.

org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [WEB-INF/spring.xml]; nested exception is java.io.FileNotFoundException: class path resource [WEB-INF/spring.xml] cannot be opened because it does not exist

Caused by: java.io.FileNotFoundException: class path resource [WEB-INF/spring.xml] cannot be opened because it does not exist

at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:137)

at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:351)

at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)

at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:126)

at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:142)

at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:168)

at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:113)

at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:79)

at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:94)

at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:294)

at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:92)

at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:77)

at org.springframework.test.AbstractSingleSpringContextTests.loadContextLocations(AbstractSingleSpringContextTests.java:138)

at org.springframework.test.AbstractSingleSpringContextTests.loadContext(AbstractSingleSpringContextTests.java:125)

at org.springframework.test.AbstractSpringContextTests.getContext(AbstractSpringContextTests.java:104)

at org.springframework.test.AbstractSingleSpringContextTests.setUp(AbstractSingleSpringContextTests.java:75)

at junit.framework.TestCase.runBare(TestCase.java:125)

at org.springframework.test.ConditionalTestCase.runBare(ConditionalTestCase.java:69)

at junit.framework.TestResult$1.protect(TestResult.java:106)

at junit.framework.TestResult.runProtected(TestResult.java:124)

at junit.framework.TestResult.run(TestResult.java:109)

at junit.framework.TestCase.run(TestCase.java:118)

at junit.framework.TestSuite.runTest(TestSuite.java:208)

at junit.framework.TestSuite.run(TestSuite.java:203)

at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)

at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

oq fazer ???

minha classe esta desenvolvida da seguinte forma.

/*

  • @(#)GrupoHorarioTest.java (22/11/2006)
  • © 2005 Digicon S/A (www.digicon.com.br).
  • All rights reserved / Todos os direitos reservados.

*/
package br.com.metrorio.sbe.grupohorario.teste;

import java.sql.Timestamp;

import java.util.ArrayList;

import java.util.HashSet;

import java.util.List;

import org.springframework.test.AbstractTransactionalSpringContextTests;
import br.com.metrorio.sbe.common.grupohorario.service.ControlarGrupoHorarioServiceImpl;

import br.com.metrorio.sbe.faixahorario.entity.FaixaHorario;

import br.com.metrorio.sbe.grupohorario.entity.GrupoHorario;

/**

  • Classe que define o objeto GrupoHorarioTest.java

  • @author Fernando Oliveira
    */
    public class GrupoHorarioTest extends AbstractTransactionalSpringContextTests {

    private ControlarGrupoHorarioServiceImpl controlarGrupoHorarioService;

    public GrupoHorarioTest(String testName) {
    
    super(testName);
    
    }
    
    private void setControlarGrupoHorarioService(ControlarGrupoHorarioServiceImpl service){
    
    this.controlarGrupoHorarioService = service;
    
    }
    
    <a class="mention" href="/u/override">@Override</a>
    
    protected String[] getConfigLocations() {
    
    // return new String[]{“WEB-INF/spring/context-*.xml”};
    
    return new String[]{“classpath:WEB-INF/spring.xml”};
    
    }
    

    @SuppressWarnings(“deprecation”)
    public void testSaveGrupoHorario(){

    // seta uma faixa horario
     List<FaixaHorario> lista = new ArrayList<FaixaHorario>();
     FaixaHorario faixaHorario =  new FaixaHorario();
    
     Timestamp time = new Timestamp(0);
     time.setHours(11);
     time.setMinutes(20);
     faixaHorario.setHoraInicio(time);
     time.setHours(15);
     time.setMinutes(30);
     faixaHorario.setHoraFim(time);
     lista.add(faixaHorario);
    
    
     time = new Timestamp(0);
     time.setHours(9);
     time.setMinutes(00);
     faixaHorario.setHoraInicio(time);
     time.setHours(16);
     time.setMinutes(00);
     faixaHorario.setHoraFim(time);
     lista.add(faixaHorario);
    
     GrupoHorario grupoHorario =  new GrupoHorario();
     grupoHorario.setId(null);
     grupoHorario.setFaixaHorarios(new HashSet<FaixaHorario>(lista));
    
     // Passa os valores para classe faixa Horario
     controlarGrupoHorarioService.salvar(grupoHorario);
    
     assertNotNull("erro ao gerar grupo ", grupoHorario.getId());
    

    }

    @SuppressWarnings(“deprecation”)
    public void testGetGrupoHorario(){

    // seta uma faixa horario
     List<FaixaHorario> lista = new ArrayList<FaixaHorario>();
     FaixaHorario faixaHorario =  new FaixaHorario();
    
     Timestamp time = new Timestamp(0);
     time.setHours(11);
     time.setMinutes(20);
     faixaHorario.setHoraInicio(time);
     time.setHours(15);
     time.setMinutes(30);
     faixaHorario.setHoraFim(time);
     lista.add(faixaHorario);
    
    
     time = new Timestamp(0);
     time.setHours(9);
     time.setMinutes(00);
     faixaHorario.setHoraInicio(time);
     time.setHours(16);
     time.setMinutes(00);
     faixaHorario.setHoraFim(time);
     lista.add(faixaHorario);
    
     GrupoHorario grupoHorario =  new GrupoHorario();
     grupoHorario.setId(null);
     grupoHorario.setFaixaHorarios(new HashSet<FaixaHorario>(lista));
    
     // Passa os valores para classe faixa Horario
     controlarGrupoHorarioService.salvar(grupoHorario);
     controlarGrupoHorarioService.listar(grupoHorario);
    
     assertNotNull("Grupo Horario nao encontrado", grupoHorario.getId());
    

    }

}

[]'s

1 Resposta

F

Valeu Galera, descobri… era apenas colocar o file…no metodo segui exemplo

protected String[] getConfigLocations() {

return new String[]{“file:tmp/war/WEB-INF/spring.xml};

}

valeu
[]'s

Criado 22 de novembro de 2006
Ultima resposta 23 de nov. de 2006
Respostas 1
Participantes 1