Duvida sobre JUNIT

Estou aprendendo JUNIT através de uma video aula, o codigo está igual mais está falhando. alguém poderia me dar um Help aí.

package br.com.caelum.leilao.dominio;

 public class Lance {

	private Usuario usuario;
	private double valor;
	
	public Lance(Usuario usuario, double valor) {
		this.usuario = usuario;
		this.valor = valor;
	}

	public Usuario getUsuario() {
		return usuario;
	}

	public double getValor() {
		return valor;
	}
}

package br.com.caelum.leilao.dominio;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Leilao {

	private String descricao;
	private List<Lance> lances;
	
	public Leilao(String descricao) {
		this.descricao = descricao;
		this.lances = new ArrayList<Lance>();
	}
	
	public void propoe(Lance lance) {
		lances.add(lance);
	}

	public String getDescricao() {
		return descricao;
	}

	public List<Lance> getLances() {
		return Collections.unmodifiableList(lances);
	}	
}

package br.com.caelum.leilao.dominio;

public class Usuario {

	private int id;
	private String nome;
	
	public Usuario(String nome) {
		this(0, nome);
	}

	public Usuario(int id, String nome) {
		this.id = id;
		this.nome = nome;
	}

	public int getId() {
		return id;
	}

	public String getNome() {
		return nome;
	}
}


package br.com.caelum.leilao.servico;

import br.com.caelum.leilao.dominio.Lance;
import br.com.caelum.leilao.dominio.Leilao;

public class Avaliador {

	private double maiorDeTodos = Double.NEGATIVE_INFINITY;
	private double menorDeTodos = Double.NEGATIVE_INFINITY;

	public void avalia(Leilao leilao) {
		for (Lance lance : leilao.getLances()) {
			if (lance.getValor() > maiorDeTodos) maiorDeTodos = lance.getValor();
			if (lance.getValor() < menorDeTodos) menorDeTodos = lance.getValor();
		}
	}

	public double getMaiorLancer() {
		return maiorDeTodos;
	}

	public double getMenorLancer() {
		return menorDeTodos;
	}
}


package br.com.caelum.leilao.teste;

import org.junit.Assert;
import org.junit.Test;

import br.com.caelum.leilao.dominio.Lance;
import br.com.caelum.leilao.dominio.Leilao;
import br.com.caelum.leilao.dominio.Usuario;
import br.com.caelum.leilao.servico.Avaliador;

public class TesteAvaliador {

	@Test
	public void deveEntenderLanceOrdemCrescente() {
		
		Usuario joao = new Usuario("João");
		Usuario jose = new Usuario("José");
		Usuario pedro = new Usuario("Pedro");

		Leilao leilao = new Leilao("Playstation 3");
		leilao.propoe(new Lance(pedro, 400.0));
		leilao.propoe(new Lance(joao, 300.0));
		leilao.propoe(new Lance(jose, 250.0));

		Avaliador leiloeiro = new Avaliador();
		leiloeiro.avalia(leilao);
		
		double maiorEsperado = 400; 
		double menorEsperado = 250;
		

		
		Assert.assertEquals(menorEsperado, leiloeiro.getMenorLancer(), 0.00001);
		Assert.assertEquals(maiorEsperado, leiloeiro.getMaiorLancer(), 0.00001); 
	}

}

Posta sua Exception…

A principio verifique sua versão de JUNIT.

Se versão menor que 4.0 precisa extender a classe TestCase

Ficando assim:

public class TesteAvaliador extends TestCase{

	@Test
	public void deveEntenderLanceOrdemCrescente() {
		
		Usuario joao = new Usuario("João");
		Usuario jose = new Usuario("José");
		Usuario pedro = new Usuario("Pedro");

		Leilao leilao = new Leilao("Playstation 3");
		leilao.propoe(new Lance(pedro, 400.0));
		leilao.propoe(new Lance(joao, 300.0));
		leilao.propoe(new Lance(jose, 250.0));

		Avaliador leiloeiro = new Avaliador();
		leiloeiro.avalia(leilao);
		
		double maiorEsperado = 400; 
		double menorEsperado = 250;
		

		
		Assert.assertEquals(menorEsperado, leiloeiro.getMenorLancer(), 0.00001);
		Assert.assertEquals(maiorEsperado, leiloeiro.getMaiorLancer(), 0.00001); 
	}

}

enquanto isso veja os exemplos que tem aqui.

deu certo, é porque não dei um build rsrs. obrigado.

1 curtida