SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
3 noções básicas
para criar automação
Taíse Dias da Silva
Geek Night Recife
Overview
 Proposta
 Padrões & Ferramentas
 Automação em 3 passos
2
Proposta
 Testes automatizados com alto valor de
negócio e baixo custo em termos de
manutenção de código
3
Padrões e Ferramentas
 Behavior Driven Development (BDD) +
Cucumber
– Linguagem natural
– Especifcações através de exemplos
– Feedback cedo
– Linguagem compartilhada
– Documentação viva
4
Padrões e Ferramentas
 Selenium WebDriver
– Simula ações no browser
– Movido por código
 Page Object
– Mapea os elementos da página em uma classe
– Defne as ações do usuário na página usando seus elementos
5
Padrões e Ferramentas
 Selenium + Cucumber
– usado pra escrever testes automatizados em linguagem natural
 Testes automatizados = documentação +
executável + manutenível
 Melhor que ferramentas como TestLink
– Manutenção da documentação
– Execução dos testes
6
Automação em 3 passos
 Passo 1: Defnir o valor de negócio
 Passo 2: Automatizar testes
 Passo 3: Refatorar para baixa
manutenção
7
Passo 1: Defnir o valor de negócio
 Escrever em texto puro antes de
implementar
 Pegar feedback do cliente
 E se estiver errado?
 Escrever narrativas – valor da
funcionalidade
 Vocabulário específco do domínio do
negócio 8
Passo 1: Defnir o valor de negócio
9
Passo 1: Defnir o valor de negócio
1
Passo 2: Automatizar testes
1
Passo 2: Automatizar testes
1
Passo 3: Refatorar para baixa manutenção
1
Passo 3: Refatorar para baixa manutenção
 Uso dos padrões de projetos (e.g.
PageObject)
Não incluir informações específcas da
página nos arquivos de features
1
Passo 3: Refatorar para baixa manutenção
 Escrever funcionalidades declarativas
1
Passo 3: Refatorar para baixa manutenção
Evitar passos que contêm duas ações
1
Por fm
 Cucumber e Selenium são apenas exemplos
de ferramentas
 O importante é conhecer o problema e as
boas práticas, e escolher as ferramentas
apropriadas
 Basta seguir as boas práticas e fazer o bom
uso das ferramentas para criar uma suíte de
automação de alto valor de negócio e de baixa
manutenção 1
Perguntas?
1
Obrigada

Mais conteúdo relacionado

Mais procurados

Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Renzo Nuccitelli
 
Apresentação da monografia - PRONTO
Apresentação da monografia - PRONTOApresentação da monografia - PRONTO
Apresentação da monografia - PRONTOLuiz Faias Junior
 
Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...
Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...
Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...Jaqueline Ramos
 
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?Edlaine Zamora
 
Cucumber e melhores práticas
Cucumber e melhores práticasCucumber e melhores práticas
Cucumber e melhores práticasDalton Teixeira
 
Behavior driven development
Behavior driven developmentBehavior driven development
Behavior driven developmentThiago Ferreira
 
Apache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSFApache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSFBruno Borges
 
Configuration as code e ALM: a nova realidade da automação
Configuration as code e ALM: a nova realidade da automaçãoConfiguration as code e ALM: a nova realidade da automação
Configuration as code e ALM: a nova realidade da automaçãoVinícius Hana Scardazzi
 
Apresentação Joomla!Day Brasil 2010
Apresentação Joomla!Day Brasil 2010Apresentação Joomla!Day Brasil 2010
Apresentação Joomla!Day Brasil 2010Fernando Soares
 
Palestra: Otimização de websites
Palestra: Otimização de websitesPalestra: Otimização de websites
Palestra: Otimização de websitesIntrus
 
pepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSSpepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSSRodrigo Urubatan
 
Bdd com cucumber + java + selenium
Bdd com cucumber + java + seleniumBdd com cucumber + java + selenium
Bdd com cucumber + java + seleniumSandy Maciel
 
Como criar módulos para magento 2
Como criar módulos para magento 2Como criar módulos para magento 2
Como criar módulos para magento 2Rafael Corrêa Gomes
 

Mais procurados (15)

Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE
 
Selenium web pt br
Selenium web pt brSelenium web pt br
Selenium web pt br
 
Apresentação da monografia - PRONTO
Apresentação da monografia - PRONTOApresentação da monografia - PRONTO
Apresentação da monografia - PRONTO
 
Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...
Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...
Gerenciando seu débito técnico, utilizando Sonarqube e Team Foundation Server...
 
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
Como testar a performance de ap is utilizando uma ferramenta simples e gratuita?
 
Cucumber e melhores práticas
Cucumber e melhores práticasCucumber e melhores práticas
Cucumber e melhores práticas
 
Behavior driven development
Behavior driven developmentBehavior driven development
Behavior driven development
 
Apache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSFApache Wicket derruba o padrão JSF
Apache Wicket derruba o padrão JSF
 
Configuration as code e ALM: a nova realidade da automação
Configuration as code e ALM: a nova realidade da automaçãoConfiguration as code e ALM: a nova realidade da automação
Configuration as code e ALM: a nova realidade da automação
 
Apresentação Joomla!Day Brasil 2010
Apresentação Joomla!Day Brasil 2010Apresentação Joomla!Day Brasil 2010
Apresentação Joomla!Day Brasil 2010
 
Palestra: Otimização de websites
Palestra: Otimização de websitesPalestra: Otimização de websites
Palestra: Otimização de websites
 
pepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSSpepinos do cliente no código de testes da aplicação com OSS
pepinos do cliente no código de testes da aplicação com OSS
 
Desempenho web
Desempenho webDesempenho web
Desempenho web
 
Bdd com cucumber + java + selenium
Bdd com cucumber + java + seleniumBdd com cucumber + java + selenium
Bdd com cucumber + java + selenium
 
Como criar módulos para magento 2
Como criar módulos para magento 2Como criar módulos para magento 2
Como criar módulos para magento 2
 

Destaque

Realizando a gestão de testes e o controle de defeitos
Realizando a gestão de testes e o controle de defeitosRealizando a gestão de testes e o controle de defeitos
Realizando a gestão de testes e o controle de defeitosVIVIANE RANGEL
 
2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...
2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...
2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...João Júnior
 
PDC - Testes - Usando o Testlink
PDC - Testes - Usando o TestlinkPDC - Testes - Usando o Testlink
PDC - Testes - Usando o Testlinkslides_teltools
 
Testes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E WebdriverTestes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E WebdriverMaurício Linhares
 
Aula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro CódigoAula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro CódigoAislan Rafael
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08André Phillip Bertoletti
 
O que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a ObjetosO que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a ObjetosDanilo Sato
 
Programacao Orientada A Objetos (Java)
Programacao Orientada A Objetos (Java)Programacao Orientada A Objetos (Java)
Programacao Orientada A Objetos (Java)Robson Silva Espig
 
Como o Cucumber Funciona
Como o Cucumber FuncionaComo o Cucumber Funciona
Como o Cucumber FuncionaLaís Berlatto
 
Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Mario Jorge Pereira
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoEvandro Júnior
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoMarconi Rodrigues
 
Apostila Lógica de Programação
Apostila Lógica de ProgramaçãoApostila Lógica de Programação
Apostila Lógica de ProgramaçãoRicardo Terra
 
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOCURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOMicrosoft
 
Curso Java Basico
Curso Java BasicoCurso Java Basico
Curso Java BasicoJoel Lobo
 

Destaque (20)

Eng de testes dia 3
Eng de testes dia 3Eng de testes dia 3
Eng de testes dia 3
 
Realizando a gestão de testes e o controle de defeitos
Realizando a gestão de testes e o controle de defeitosRealizando a gestão de testes e o controle de defeitos
Realizando a gestão de testes e o controle de defeitos
 
2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...
2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...
2° Workshop de Testes em Uberlândia - Treinamento em Automação de Testes com ...
 
PDC - Testes - Usando o Testlink
PDC - Testes - Usando o TestlinkPDC - Testes - Usando o Testlink
PDC - Testes - Usando o Testlink
 
Testlink apresentacao
Testlink apresentacaoTestlink apresentacao
Testlink apresentacao
 
Testes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E WebdriverTestes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E Webdriver
 
Aula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro CódigoAula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro Código
 
Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08Lógica de Programação - Unimep/Pronatec - Aula08
Lógica de Programação - Unimep/Pronatec - Aula08
 
O que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a ObjetosO que você NÃO aprendeu sobre Programação Orientada a Objetos
O que você NÃO aprendeu sobre Programação Orientada a Objetos
 
BDD & Cucumber
BDD & CucumberBDD & Cucumber
BDD & Cucumber
 
Programacao Orientada A Objetos (Java)
Programacao Orientada A Objetos (Java)Programacao Orientada A Objetos (Java)
Programacao Orientada A Objetos (Java)
 
Como o Cucumber Funciona
Como o Cucumber FuncionaComo o Cucumber Funciona
Como o Cucumber Funciona
 
BDD: Cucumber + Selenium + Java
BDD: Cucumber + Selenium + JavaBDD: Cucumber + Selenium + Java
BDD: Cucumber + Selenium + Java
 
Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e Implementação
 
BDD com Cucumber
BDD com CucumberBDD com Cucumber
BDD com Cucumber
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a Objeto
 
Apostila Lógica de Programação
Apostila Lógica de ProgramaçãoApostila Lógica de Programação
Apostila Lógica de Programação
 
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOCURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
 
Curso Java Basico
Curso Java BasicoCurso Java Basico
Curso Java Basico
 

Semelhante a 3 passos para automação

3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva minastestingconference
 
Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Igor Abade
 
BDD em Testes de Serviço
BDD em Testes de ServiçoBDD em Testes de Serviço
BDD em Testes de ServiçoRafael Lima
 
Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasKleitor Franklint Correa Araujo
 
Testes automatizados cp
Testes automatizados cpTestes automatizados cp
Testes automatizados cpcesarvianna
 
[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018Larissa Soares
 
Agile Brazil 2018
Agile Brazil 2018Agile Brazil 2018
Agile Brazil 2018Karla Silva
 
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...Igor Abade
 
Webcast WebSphere Portal Performance
Webcast WebSphere Portal PerformanceWebcast WebSphere Portal Performance
Webcast WebSphere Portal PerformanceAlex Barbosa Coqueiro
 
Scrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento ÁgilScrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento Ágilabacrazy
 
Práticas de Desenvolvimento de Software
Práticas de Desenvolvimento de SoftwarePráticas de Desenvolvimento de Software
Práticas de Desenvolvimento de SoftwareTiago Barros
 
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...Igor Abade
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = ProdutividadeAdriano Bertucci
 

Semelhante a 3 passos para automação (20)

3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
 
Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?
 
BDD em Testes de Serviço
BDD em Testes de ServiçoBDD em Testes de Serviço
BDD em Testes de Serviço
 
Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégias
 
Testes automatizados cp
Testes automatizados cpTestes automatizados cp
Testes automatizados cp
 
[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018[Karla e Larissa] Agile Brazil 2018
[Karla e Larissa] Agile Brazil 2018
 
Agile Brazil 2018
Agile Brazil 2018Agile Brazil 2018
Agile Brazil 2018
 
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
Scrum e Team Foundation Server - Qualidade ao longo de todo o ciclo de vida d...
 
Palestra Testes Ágeis - SEMAC INF UFRGS
Palestra Testes Ágeis - SEMAC INF UFRGSPalestra Testes Ágeis - SEMAC INF UFRGS
Palestra Testes Ágeis - SEMAC INF UFRGS
 
Webcast WebSphere Portal Performance
Webcast WebSphere Portal PerformanceWebcast WebSphere Portal Performance
Webcast WebSphere Portal Performance
 
Scrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento ÁgilScrum e o Ambiente de Desenvolvimento Ágil
Scrum e o Ambiente de Desenvolvimento Ágil
 
Metodologias Ageis
Metodologias AgeisMetodologias Ageis
Metodologias Ageis
 
Práticas de Desenvolvimento de Software
Práticas de Desenvolvimento de SoftwarePráticas de Desenvolvimento de Software
Práticas de Desenvolvimento de Software
 
Metralhando sua API
 Metralhando sua API Metralhando sua API
Metralhando sua API
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Teste de software
Teste de software Teste de software
Teste de software
 
QArentena - QA do Futuro
QArentena - QA do FuturoQArentena - QA do Futuro
QArentena - QA do Futuro
 
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...
Aferindo a qualidade do serviço com testes de desempenho - MVP Virtual Confer...
 
#{GCODE}
#{GCODE}#{GCODE}
#{GCODE}
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
 

Mais de Taise Dias da Silva

TheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavel
TheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavelTheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavel
TheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavelTaise Dias da Silva
 
TheDevConf 2016 - Análise efetiva de microservices em 3 passos
TheDevConf 2016 - Análise efetiva de microservices em 3 passosTheDevConf 2016 - Análise efetiva de microservices em 3 passos
TheDevConf 2016 - Análise efetiva de microservices em 3 passosTaise Dias da Silva
 
MTC_2016-analise_efetiva_de_microsservicos
MTC_2016-analise_efetiva_de_microsservicosMTC_2016-analise_efetiva_de_microsservicos
MTC_2016-analise_efetiva_de_microsservicosTaise Dias da Silva
 
Testes automatizados com alto valor de negócio e baixo custo de manutenção
Testes automatizados com alto valor de negócio e baixo custo de manutençãoTestes automatizados com alto valor de negócio e baixo custo de manutenção
Testes automatizados com alto valor de negócio e baixo custo de manutençãoTaise Dias da Silva
 

Mais de Taise Dias da Silva (6)

TheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavel
TheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavelTheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavel
TheDevConf 2016 - 4 dicas valiosas para uma piramide de testes saudavel
 
TheDevConf 2016 - Análise efetiva de microservices em 3 passos
TheDevConf 2016 - Análise efetiva de microservices em 3 passosTheDevConf 2016 - Análise efetiva de microservices em 3 passos
TheDevConf 2016 - Análise efetiva de microservices em 3 passos
 
MTC_2016-analise_efetiva_de_microsservicos
MTC_2016-analise_efetiva_de_microsservicosMTC_2016-analise_efetiva_de_microsservicos
MTC_2016-analise_efetiva_de_microsservicos
 
Testes automatizados com alto valor de negócio e baixo custo de manutenção
Testes automatizados com alto valor de negócio e baixo custo de manutençãoTestes automatizados com alto valor de negócio e baixo custo de manutenção
Testes automatizados com alto valor de negócio e baixo custo de manutenção
 
Cucumber-QA_Night
Cucumber-QA_NightCucumber-QA_Night
Cucumber-QA_Night
 
Cucumber
CucumberCucumber
Cucumber
 

3 passos para automação

  • 1. 3 noções básicas para criar automação Taíse Dias da Silva Geek Night Recife
  • 2. Overview  Proposta  Padrões & Ferramentas  Automação em 3 passos 2
  • 3. Proposta  Testes automatizados com alto valor de negócio e baixo custo em termos de manutenção de código 3
  • 4. Padrões e Ferramentas  Behavior Driven Development (BDD) + Cucumber – Linguagem natural – Especifcações através de exemplos – Feedback cedo – Linguagem compartilhada – Documentação viva 4
  • 5. Padrões e Ferramentas  Selenium WebDriver – Simula ações no browser – Movido por código  Page Object – Mapea os elementos da página em uma classe – Defne as ações do usuário na página usando seus elementos 5
  • 6. Padrões e Ferramentas  Selenium + Cucumber – usado pra escrever testes automatizados em linguagem natural  Testes automatizados = documentação + executável + manutenível  Melhor que ferramentas como TestLink – Manutenção da documentação – Execução dos testes 6
  • 7. Automação em 3 passos  Passo 1: Defnir o valor de negócio  Passo 2: Automatizar testes  Passo 3: Refatorar para baixa manutenção 7
  • 8. Passo 1: Defnir o valor de negócio  Escrever em texto puro antes de implementar  Pegar feedback do cliente  E se estiver errado?  Escrever narrativas – valor da funcionalidade  Vocabulário específco do domínio do negócio 8
  • 9. Passo 1: Defnir o valor de negócio 9
  • 10. Passo 1: Defnir o valor de negócio 1
  • 13. Passo 3: Refatorar para baixa manutenção 1
  • 14. Passo 3: Refatorar para baixa manutenção  Uso dos padrões de projetos (e.g. PageObject) Não incluir informações específcas da página nos arquivos de features 1
  • 15. Passo 3: Refatorar para baixa manutenção  Escrever funcionalidades declarativas 1
  • 16. Passo 3: Refatorar para baixa manutenção Evitar passos que contêm duas ações 1
  • 17. Por fm  Cucumber e Selenium são apenas exemplos de ferramentas  O importante é conhecer o problema e as boas práticas, e escolher as ferramentas apropriadas  Basta seguir as boas práticas e fazer o bom uso das ferramentas para criar uma suíte de automação de alto valor de negócio e de baixa manutenção 1