Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

DETALHAMENTO COMPLETO DO CONTEÚDO (Aula JUnit – Testes Automatizados)
🎯 1. Introdução ao Tema
O professor explica que a disciplina é Gerência e Qualidade de Software e que agora será abordado o tema testes automatizados, especificamente utilizando JUnit, a ferramenta mais tradicional para testes de unidade em Java.
Pontos-chave:
· Já houve menções a testes automatizados em aulas anteriores.
· Agora o foco está em automação de testes de unidade.
· JUnit é a ferramenta escolhida, embora existam outras (ex.: EUnit).
🧪 2. O que são Testes de Unidade?
Testes de unidade verificam métodos individuais de uma classe, garantindo que cada funcionalidade isolada esteja correta.
Objetivo:
 → Garantir que cada método de uma classe produza o resultado esperado para diversos tipos de entrada.
🧰 3. Demonstração Prática no Eclipse (com JUnit 4)
Toda a demonstração acontece no Eclipse, criando:
3.1 Estrutura do Projeto
O professor cria dois pacotes:
1. Pacote do código-fonte – onde ficam as classes do sistema.
2. Pacote dos testes – onde ficam as classes de teste.
Ele menciona que:
· Em projetos Maven ou Gradle essa estrutura já vem pronta: 
· src/main/java
· src/test/java
🧮 4. Implementação da Classe Calculadora
Ele cria a classe Calculadora.java contendo quatro métodos:
· adicao(a, b)
· subtracao(a, b)
· multiplicacao(a, b)
· divisao(a, b)
Cada método deve receber 2 valores e retornar a operação correta.
Mas inicialmente todos estavam implementados incorretamente (todos somando).
🧪 5. Criação da Classe de Teste CalculadoraTeste
O professor cria a classe de teste automaticamente pelo Eclipse:
· Nome: CalculadoraTeste
· Vinculada à classe Calculadora
· Eclipse automaticamente cria um método de teste para cada método da Calculadora: 
· testAdicao()
· testSubtracao()
· testMultiplicacao()
· testDivisao()
Inicialmente todos os métodos tinham fail("Not implemented"), gerando 4 falhas.
🧩 6. Implementação dos Testes
Exemplo de teste implementado (adição):
Java
int valor1 = 1;
int valor2 = 2;
int esperado = 3;
int obtido = calculadora.adicao(valor1, valor2);
assertEquals(esperado, obtido);
Mostrar mais linhas
Conceito apresentado:
✔ assertEquals(esperado, obtido)
 Se o retorno do método NÃO for o esperado → o teste falha.
🔍 7. Execução e Análise dos Testes
Primeira execução:
· Apenas o teste de adição passou.
· Os outros três falharam (pois o código estava incorreto).
Depois, o professor adiciona vários testes:
· Testes com números positivos
· Testes com zero
· Testes com números negativos
Exemplo:
ADIÇÃO
· 1 + 2 = 3
· 0 + 0 = 0
· -10 + -20 = -30
SUBTRAÇÃO
· 25 - 5 = 20
MULTIPLICAÇÃO
· 3 × 5 → o professor escreveu errado (colocou 8), corrigiu para 15
DIVISÃO
· 100 / 2 = 50
 → Falhou porque o método estava implementado errado (somava em vez de dividir)
🛠️ 8. Correção da Classe Calculadora
O professor revisa os métodos e corrige:
· Substitui todas as somas pelas operações corretas.
· Ajusta nome de variáveis.
· Reexecuta os testes: todos passam.
🔁 9. Conceito Importante: Testes de Regressão
O professor demonstra:
· Se você alterar o código, deve rodar a suíte de testes.
· Se algo quebrar → você detecta imediatamente.
Exemplo:
· Trocar ordem dos operandos na adição e multiplicação → continua funcionando.
· Fazer isso na divisão → quebra (teste falha), como esperado.
Isso demonstra: ✔ Autonomia
 ✔ Segurança ao modificar o código
 ✔ Economia de tempo
🧰 10. Test Case vs Test Suite
O Eclipse permite criar:
✔ Test Case
Um conjunto de testes para uma classe específica (o que ele fez).
✔ Test Suite
Uma “coleção de Test Cases”, que permite rodar:
· toda a suíte de testes
· com um único comando
Em projetos Maven/Gradle isso costuma rodar automaticamente na fase test.
⚙️ 11. Integração com Build (Maven/Gradle)
Ele menciona que:
· Testes automatizados devem ser incluídos nos pipelines automáticos.
· Sempre que o desenvolvedor compila o software: → os testes devem rodar automaticamente.
Assim, qualquer alteração inadequada aparece imediatamente.
🧪 12. Assertivas do JUnit
O professor explica que o assertEquals é apenas uma das assertivas disponíveis.
JUnit tem:
· assertTrue
· assertFalse
· assertNotEquals
· assertNull
· assertNotNull
· entre outras
Cada uma serve para verificar diferentes tipos de condições.
📚 13. Conclusão da Aula
A aula apresentou:
· O conceito de teste de unidade
· A importância da automação
· Como criar testes com JUnit
· Como analisar falhas
· Como corrigir testes ou código-fonte
· Testes de regressão
· Organização de testes em Test Suites
· Integração com ferramentas de build

Mais conteúdos dessa disciplina