Boa noite amigos, estou iniciando estudos sobre spring e estou me deparando com o seuginte problema ao testar um dos meus métodos, alguem poderia me ajudar?
Eu tenho um pacote /…/.dominio com as classes anotadas com o @Autowired
estou com seguinte erro:
INFO : org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [br/com/orcamento/tu/TestaPersistenciaOrcamento-context.xml]
ERROR: org.springframework.test.context.TestContextManager - Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@3a26cb0f] to prepare test instance [br.com.orcamento.tu.TestaPersistenciaOrcamento@48dd639c]
java.lang.IllegalStateException: Failed to load ApplicationContext
at org.springframework.test.context.TestContext.getApplicationContext(TestContext.java:308)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:109)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:75)
at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:321)
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [br/com/orcamento/tu/TestaPersistenciaOrcamento-context.xml]; nested exception is java.io.FileNotFoundException: class path resource [br/com/orcamento/tu/TestaPersistenciaOrcamento-context.xml] cannot be opened because it does not exist
meu applicationContext é o seguinte
[code]<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<context:annotation-config/>
<context:component-scan base-package="br.com.orcamento.dominio">
</context:component-scan>
[/code]
e meu teste é o seguinte
[code]@ContextConfiguration
public class TestaPersistenciaOrcamento extends AbstractTransactionalJUnit4SpringContextTests {
@Autowired
private Usuario usuario;
@Autowired
private FormaPagamento formaPagamento;
@Autowired
private Orcamento orcamento;
@Autowired
private Publico publico;
@Autowired
private OrcamentoRepository repository;
@Autowired
private Produto produto;
@Autowired
private GrupoProduto grupo;
private MemoriaOrcamentoRepositorio memoria;
@Before
public void criaOrcamentoSerPersistido() {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
grupo.setId(1L);
grupo.setNome("Especial");
produto.setId(1L);
produto.setNome("Mouse");
produto.setPreco(10.00);
produto.setSaldo(5);
produto.setGrupoProduto(grupo);
List<Produto> listaProduto = new ArrayList<Produto>();
listaProduto.add(produto);
formaPagamento.setId(1L);
formaPagamento.setNome("Á Vista");
usuario.setId(1L);
usuario.setLogin("teste");
usuario.setSenha("teste");
publico.setId(1L);
publico.setNome("Tiago");
publico.setEndereco("José Augusto Mendonça 331");
publico.setFone("16 3835-1947");
publico.setEmail("titata18@hotmail.com");
publico.setAtivo(true);
orcamento.setId(1L);
orcamento.setValorOrcado(1000.00);
orcamento.setCliente(publico);
orcamento.setEmissao(new Date());
orcamento.setEntrega(new Date());
orcamento.setValidade(new Date());
orcamento.setFormaPagamento(formaPagamento);
orcamento.setParcela(5L);
orcamento.setPorcentagemDesconto(0.0);
orcamento.setStatus(StatusOrcamento.PENDENTE);
orcamento.setUsuario(usuario);
orcamento.setProduto(listaProduto);
//repository.save(orcamento);
this.memoria = (MemoriaOrcamentoRepositorio) context.getBean("MemoriaOrcamentoRepositorio");
memoria.save(orcamento);
}
@Test
public void testaOrcamentoPersistido(){
Assert.assertTrue(memoria.retornaListaObjetosPersistidos().contains(orcamento.getId()));
}[/code]
Agradeço.