Skip to content

O funil de Teste

Fundamentos de Teste de Software

Introduzir os conceitos e a importância dos testes de software no ciclo de desenvolvimento.

Introdução ao Teste de Software

  • O que é teste de software e sua importância.
  • Tipos de defeitos e impacto na qualidade do software.

Principais Conceitos e Termos

  • Ciclo de vida do teste (Test Life Cycle).
  • Definições: teste, bug, erro, falha, casos de teste e cenários de teste.

Níveis de Teste

  • Testes unitários, de integração, de sistema e de aceitação.
  • Aplicação prática em diferentes etapas do desenvolvimento.

Tipos de Teste

  • Testes funcionais e não funcionais.
  • Testes manuais vs. automatizados.

Planejamento e Gestão de Testes

Desenvolver habilidades para planejar e organizar atividades de teste.

Planejamento de Testes

  • Análise de requisitos para identificação de casos de teste.
  • Criação do plano de testes: escopo, objetivos e critérios de aceitação.

Estratégias de Teste

  • Teste exploratório, baseado em riscos e baseado em dados.
  • Priorização de casos de teste.

Documentação de Testes

  • Especificação de casos de teste.
  • Registro de evidências e relatórios de execução.

Ferramentas de Gestão de Teste

  • Jira, TestRail, Zephyr ou outras ferramentas populares.

Teste Manual

Capacitar para execução de testes manuais e identificação de defeitos.

Execução de Testes Manuais

  • Realização de casos de teste.
  • Identificação e registro de defeitos (bugs).

Técnicas de Teste

  • Partição de equivalência.
  • Análise de valor limite.
  • Tabela de decisão e testes de transição de estado.

Teste de Interface do Usuário (UI)

  • Verificação da experiência do usuário e design responsivo.
  • Inspeção de validações e mensagens de erro.

Teste Automatizado

Implementar automações para aumentar a eficiência dos testes.

Introdução à Automação de Testes

  • Vantagens e desafios.
  • Quando e como automatizar testes.

Ferramentas de Automação de Testes

  • Selenium, Cypress, Playwright, JUnit, TestNG.
  • Comparação entre ferramentas e casos de uso.

Automação de Testes Funcionais

  • Escrita de scripts de teste.
  • Execução e validação de resultados.

Automação de Testes de API

  • Testes de API com Postman, SoapUI ou RestAssured.
  • Verificação de endpoints, status HTTP e payloads.

Testes de Performance e Segurança

Garantir a estabilidade, escalabilidade e segurança do software.

Teste de Performance

  • Introdução a testes de carga, estresse e escalabilidade.
  • Ferramentas como JMeter, Gatling ou Locust.

Teste de Segurança

  • Identificação de vulnerabilidades comuns (OWASP Top 10).
  • Ferramentas como OWASP ZAP e Burp Suite.

Teste em Ambientes Ágeis e DevOps

Integrar práticas de teste em ciclos ágeis e pipelines de CI/CD.

Testes em Metodologias Ágeis

  • Teste como parte do Scrum e Kanban.
  • Participação de testadores no planejamento ágil.

Integração Contínua e Entrega Contínua (CI/CD)

  • Testes em pipelines automatizados (Azure DevOps, GitHub Actions).
  • Automação de regressão em ciclos contínuos.