Aula de Java 24/02 - Testes Unitarios

Page 1

24-02-2011. Tests e classe Objetc( ). Atributos derivados – “assim como data de nascimento, depende de outro para existir” Private – é necessário pois você garante a segurança do seu código. Em qualquer caso de duvida, usar prontuário como private. JUnit – é uma biblioteca que facilita a criação de testes unitários, testes para cada um dos métodos do seu código.JUnit 3 – usa um conceito bem diferente na geração dos testes. O JUnit que usaremos será o 4, para criarmos “tests”. JUnit deve ser feito no mesmo pacote por questão de organização, e também por que colocando no mesmo pacote, temos acesso aos protecteds. CodeConventions – NomeDaClasseTest. SetUp – serve para preparar as classes.[setup() [uma vez antes de todos] setUpBefore [uma vez pra todos]] TearDown – descartar conexão.[tearDown() [uma vez antes de todos] tearDownBefore [uma ver pra todos]] TestCase – é uma classe qualquer que tem vário métodos, o nome não importa e CADA UM DESSES TESTES precisam de ter a anotação “@test” Para evitar que ocorra um erro no teste, ou que o mesmo seja burlado, é recomendável que usemos variáveis randomicas Apache Commons. → Pesquisar !! InstanceOf() – verifica se o objeto é uma instancia de uma classe X. Casting – conversão de tipo interno. [= (double)22.4] Em casa: Completar os testes. Para testar a igualdade, precisamos testar CADA atributo do objeto. Teste, pra que ? - Fazemos os testes para garantir que os métodos estão consistentes, não pode ser burlados e para garantir que estes fazem o que foi definido. Ferramentas de cobertura – verifica o quanto foi coberto com os testes, ou seja, quantas linhas foram rodadas [coverlipse] Expected – colocado nos testes com a intenção de pegar a exception.[@expected] TEST CASE package br.edu.ifsp.spo.lp2pares.rafinha; import static org.junit.Assert.*; import org.junit.Test; public class AlunoTest { @Test public void testAlunoEquals() { Aluno aluno1 = new Aluno(); Aluno aluno2; aluno2 = new Aluno(); assertTrue(aluno1.equals(aluno2)); assertFalse(aluno1.equals(null)); assertFalse(aluno1.equals(new Integer(0))); java.util.Random r = new java.util.Random(); int turma = r.nextInt(60); String palavras = "";


for (int k = 0; k < 10; k++) { palavras += (char) r.nextInt(255); } aluno1.setCurso(palavras); aluno1.setNome(palavras); aluno1.setProntuario(palavras); aluno1.setDataNascimento(null); aluno1.setTurma(turma); aluno2.setCurso(palavras); aluno2.setNome(palavras); aluno2.setProntuario(palavras); aluno2.setDataNascimento(null); aluno2.setTurma(turma); assertTrue(aluno1.equals(aluno2)); aluno2.setCurso("qqq"); aluno2.setNome(palavras); aluno2.setProntuario(palavras); aluno2.setDataNascimento(null); aluno2.setTurma(turma); assertFalse(aluno1.equals(aluno2)); aluno2.setCurso(palavras); aluno2.setNome("Ivan"); aluno2.setProntuario(palavras); aluno2.setDataNascimento(null); aluno2.setTurma(turma); assertFalse(aluno1.equals(aluno2)); aluno2.setCurso(palavras); aluno2.setNome(palavras); aluno2.setProntuario("90"); aluno2.setDataNascimento(null); aluno2.setTurma(turma); assertFalse(aluno1.equals(aluno2)); aluno2.setCurso(palavras); aluno2.setNome(palavras); aluno2.setProntuario(palavras); aluno2.setDataNascimento(new java.text.SimpleDateFormat()); aluno2.setTurma(turma); assertFalse(aluno1.equals(aluno2)); aluno2.setCurso(palavras); aluno2.setNome(palavras);


aluno2.setProntuario(palavras); aluno2.setDataNascimento(null); aluno2.setTurma(550); assertFalse(aluno1.equals(aluno2)); } @Test public void testGetProntuario() { java.util.Random r = new java.util.Random(); String palavras = ""; for (int k = 0; k < 10; k++) { palavras += (char) r.nextInt(255); } Aluno x = new Aluno(); x.setProntuario(palavras); assertEquals(x.getProntuario(), palavras); } @Test public void testGetNome() { java.util.Random r = new java.util.Random(); String palavras = ""; for (int k = 0; k < 10; k++) { palavras += (char) r.nextInt(255); } Aluno x = new Aluno(); x.setNome(palavras); assertEquals(x.getNome(), palavras); } @Test public void testGetTurma() { java.util.Random r = new java.util.Random(); int turma = r.nextInt(60);; Aluno x = new Aluno(); x.setTurma(turma); assertEquals(x.getTurma(), turma); } @Test


public void testGetCurso() { java.util.Random r = new java.util.Random(); String palavras = ""; for (int k = 0; k < 10; k++) { palavras += (char) r.nextInt(255); } Aluno x = new Aluno(); x.setCurso(palavras); assertEquals(x.getCurso(), palavras); } @Test public void testGetDataNascimento() { java.text.SimpleDateFormat data = new java.text.SimpleDateFormat("dd/MM/yyyy"); data.getCalendar().getTime(); Aluno x = new Aluno(); x.setDataNascimento(data); assertEquals(x.getDataNascimento(), data); } }


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.