Transcript
Page 1: Feedback mais rápido na sua build dividindo os testes funcionais

Feedback mais rápido na sua build dividindo os testes

funcionais@eliasnogueira

Page 2: Feedback mais rápido na sua build dividindo os testes funcionais

Agile Coach & Trainner | QA Engineer na AdaptworksProfessor de Pós Graduação na Unisinos/RS

Elias Nogueira

adaptworks.com.br

eliasnogueira

github.com/eliasnogueira

eliasnogueira.com

Page 3: Feedback mais rápido na sua build dividindo os testes funcionais

• Mostrar como dividir seus testes através de um pipeline• Smoke Tests | Testes Funcionais | Testes de Aceitação

Nossa agenda

CasperJS Selenium WebDriverJenkins

Page 4: Feedback mais rápido na sua build dividindo os testes funcionais

É a forma com que definimos o ciclo de vida (estágios) que teremos em uma aplicação

Ex: Build -> Testes -> Deploy

É um dos pontos chaves da Entrega Contínua, referenciado como Build Pipeline• Garante que todo o processo esteja visível para todos os

envolvidos• Melhora o feedback ajudando a identificar o problema mais

rápido• Permite liberar uma versão do software ”sem medo”

O que é um Pipeline?

Page 5: Feedback mais rápido na sua build dividindo os testes funcionais

É feito através de um plugin e um modelo de projeto com mesmo nome, onde é necessário criar um arquivo descrevendo o processo

Pipeline no JenkinsJenkinsfile

Page 6: Feedback mais rápido na sua build dividindo os testes funcionais

É um tipo de teste de software compreende em um conjunto de testes não exaustivos que visa garantir que as partes mais importantes do software estejam funcionando

• Necessário focar nas funcionalidades mais críticas para o negócio• Assegura a passagem para a execução completa de um nível• Expõe erros de integração ou relacionados

O que é Smoke Test

Page 7: Feedback mais rápido na sua build dividindo os testes funcionais

• Criar stages/sub stages para cada tipo de teste

Divisão sugerida para uma Pipeline de Teste

Testes Unitários

Testes de Integração

Testes de Serviço/API

Testes de Aceitação

Testes Funcionais

Smoke SmokeSmoke

Execução Paralela

Para dar velocidade à execução (feedback mais rápido)

Page 8: Feedback mais rápido na sua build dividindo os testes funcionais

Mão na massa!

Projeto mostrando a divisão dos testeshttps://github.com/eliasnogueira/hello-world-pipeline-jenkins

Projeto mostrando a divisão dos testeshttps://github.com/eliasnogueira/basic-pipeline-project-java-selenium

* projeto sem o jenkinsfile

Page 9: Feedback mais rápido na sua build dividindo os testes funcionais

Projeto Automação

Baixar/Atualizar Projeto

Compilar Projeto

ExecutarSmoke Tests

Executar Testes

Funcionais

ExecutarTestes

Aceitação

Page 10: Feedback mais rápido na sua build dividindo os testes funcionais

Projeto Automação

Baixar/Atualizar Projeto

Compilar Projeto

ExecutarSmoke Tests

Executar Testes

Funcionais

ExecutarTestes

Aceitação

Baixar (clone) projeto do GitHub

Garante que teremos sempre a última atualização

Page 11: Feedback mais rápido na sua build dividindo os testes funcionais

Projeto Automação

Baixar/Atualizar Projeto

Compilar Projeto

ExecutarSmoke Tests

Executar Testes

Funcionais

ExecutarTestes

Aceitação

Compilar os fontes do projeto

Atualizar bibliotecas

Page 12: Feedback mais rápido na sua build dividindo os testes funcionais

Projeto Automação

Baixar/Atualizar Projeto

Compilar Projeto

ExecutarSmoke Tests

Executar Testes

Funcionais

ExecutarTestes

Aceitação

Executar os testes na web de forma headless

Tem uma maior velocidade perante testes com interface gráfica

Page 13: Feedback mais rápido na sua build dividindo os testes funcionais

Projeto Automação

Baixar/Atualizar Projeto

Compilar Projeto

ExecutarSmoke Tests

Executar Testes

Funcionais

ExecutarTestes

Aceitação

Executar Testes Funcionais da aplicação

Executa um profile no Maven que filtra somente os testes funcionais

Page 14: Feedback mais rápido na sua build dividindo os testes funcionais

Projeto Automação

Baixar/Atualizar Projeto

Compilar Projeto

ExecutarSmoke Tests

Executar Testes

Funcionais

ExecutarTestes

Aceitação

Executar Testes de Aceitação da aplicação

Executa um profile no Maven que filtra somente os testes de aceitação


Top Related