Duvida com Spring + Hibernate + Teste

3 respostas
BLV_DOOM_JAVA

Boa noite pessoal!
Estou dando uma estudada de Spring pela apostila do curso FJ-27 que pertence a um amigo meu do serviço.

Vamos la:

Estou tentando efetuar testes da aplicação pelo JUnit mas estou tomando a mensagem:

18/07/2012 23:20:02 org.springframework.test.AbstractDependencyInjectionSpringContextTests prepareTestInstance
INFO: ApplicationContext has not been configured for test [br.com.caelum.fj27.gerenciador.GerenciadorProjetoTest]: dependency injection will NOT be performed.

A minha duvida é que eu fiz igual ao solicitado na apostila:
Segue meu arquivo de configuração do spring:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
		
		<bean id="gerenciadorProjeto" class="br.com.caelum.fj27.gerenciador.GerenciadorProjeto">
			<property name="projetoDAO" ref="projetoDAO" />
		</bean>
		<bean id="gerenciadorTarefa" class="br.com.caelum.fj27.gerenciador.GerenciadorTarefa" />
		
		<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean" destroy-method="destroy">
			<property name="hibernateProperties">
				<props>
					<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop>
					<prop key="hibernate.connection.url">jdbc:mysql://localhost/teste</prop>
					<prop key="hibernate.connection.driver_class">com.mysql.jdbc.Driver</prop>
					<prop key="hibernate.connection.username">root</prop>
					<prop key="hibernate.connection.password">root</prop>
					<prop key="hibernate.hbm2ddl.auto">create</prop>
				</props>
			</property>
			<property name="annotatedClasses">
				<list>
					<value>br.com.caelum.fj27.modelo.Projeto</value>
					<value>br.com.caelum.fj27.modelo.Tarefa</value>
					<value>br.com.caelum.fj27.modelo.LogDeTrabalho</value>
				</list>
			</property>
		</bean>
		
		<bean id="projetoDAO" class="br.com.caelum.fj27.dao.hibernate.ProjetoDAOImpl">
			<constructor-arg index="0" ref="sessionFactory" />
		</bean>
		
		<bean id="tarefaDAO" class="br.com.caelum.fj27.dao.hibernate.TarefaDAOImpl">
			<constructor-arg index="0" ref="sessionFactory" />
		</bean>
</beans>

Alguém pode me dar uma luz?

3 Respostas

rderoci

Cade sua classe de testes?

BLV_DOOM_JAVA
rderoci:
Cade sua classe de testes?
E ai cara, blz? Segue abaixo a minha classe de teste:
package br.com.caelum.fj27.gerenciador;

import org.springframework.test.AbstractDependencyInjectionSpringContextTests;

import br.com.caelum.fj27.modelo.Projeto;

public class GerenciadorProjetoTest extends
		AbstractDependencyInjectionSpringContextTests {
	
	private GerenciadorProjeto gerenciadorProjeto;
	
	public void setGerenciadorProjeto(GerenciadorProjeto gerenciadorProjeto) {
		this.gerenciadorProjeto = gerenciadorProjeto;
	}
	
	public void testNovo() {
		Projeto projeto = gerenciadorProjeto.novo("Projeto de Teste", true);
		assertNotNull(projeto);
	}

}
e esta é classe que eu vou testar:
package br.com.caelum.fj27.gerenciador;

import br.com.caelum.fj27.modelo.Projeto;
import br.com.caelum.fj27.modelo.dao.ProjetoDAO;

public class GerenciadorProjeto {
	
	private ProjetoDAO projetoDAO;
	
	public void setProjetoDAO(ProjetoDAO projetoDAO) {
		this.projetoDAO = projetoDAO;
	}
	
	public Projeto novo(String nome, boolean ativo) {
		Projeto projeto = new Projeto();
		projeto.setNome(nome);
		projeto.setAtivo(ativo);
		
		
		projetoDAO.save(projeto);
		return projeto;
	}

}

As classes de teste estão na pasta test e as normais estão na src.
O que posso fazer?

BLV_DOOM_JAVA

Alguém pode me dar uma mão nesse caso?
Eu ja olhei os jars, as classes e não sei o que pode ser.

Criado 18 de julho de 2012
Ultima resposta 19 de jul. de 2012
Respostas 3
Participantes 2