SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
1
3	
  noções	
  básicas	
  	
  
para	
  automação	
  de	
  
testes	
  efetivos
Taíse	
  Dias	
  da	
  Silva
2
Apresentação
Use	
  #TWnaMTC2015	
  e	
  
siga	
  ThoughtWorks_pt	
  
pra	
  concorrer	
  a	
  um	
  livro
	
  	
  @taisedias	
  
	
  	
  taisedias	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  
	
  	
  taise-­‐dias-­‐da-­‐silva
Taíse	
  Dias	
  da	
  Silva
3
Sumário
1.Por	
  que	
  automatizar	
  testes?	
  
2.Passo	
  1:	
  definir	
  o	
  valor	
  do	
  negócio	
  
3.Passo	
  2:	
  automatizar	
  os	
  testes	
  
4.Passo	
  3:	
  refatorar	
  para	
  baixa	
  manutenção
4
Por	
  que	
  automatizar	
  testes?
Source: http://gatariadavila.blogspot.com.br/
5
Por	
  que	
  automatizar	
  testes?
Source: http://gatariadavila.blogspot.com.br/
6
Passo	
  1:	
  Definir	
  o	
  valor	
  do	
  negócio
-­‐ Não	
  testar	
  por	
  testar	
  
-­‐ Escrever	
  narrativas	
  -­‐	
  valor	
  da	
  funcionalidade	
  
-­‐ Escrever	
  através	
  de	
  exemplos	
  em	
  texto	
  puro	
  
antes	
  de	
  implementar	
  (BDD)	
  
-­‐ Pegar	
  feedback	
  do	
  cliente	
  
-­‐ E	
  se	
  estiver	
  errado?	
  
-­‐ Vocabulário	
  específico	
  do	
  domínio	
  do	
  
negócio	
  
-­‐ Cucumber:	
  documentação	
  viva
7
Passo	
  1:	
  Definir	
  o	
  valor	
  do	
  negócio
8
Passo	
  1:	
  Definir	
  o	
  valor	
  do	
  negócio
9
Passo	
  2:	
  Automatizar	
  os	
  testes
10
Passo	
  2:	
  Automatizar	
  os	
  testes
Selenium	
  Web	
  Driver:	
  
-­‐ iniciada	
  em	
  2004	
  pelo	
  ThoughtWorker	
  
Jason	
  Huggins	
  
-­‐ simula	
  ações	
  no	
  browser	
  
-­‐ movido	
  por	
  código,	
  linguagem	
  de	
  
programação	
  
PageObject:	
  
-­‐ mapea	
  os	
  elementos	
  da	
  classe	
  em	
  uma	
  
página	
  usando	
  seus	
  elementos
11
Passo	
  2:	
  Automatizar	
  os	
  testes
12
Passo	
  2:	
  Automatizar	
  os	
  testes
13
Passo	
  2:	
  Automatizar	
  os	
  testes
14
Passo	
  2:	
  Automatizar	
  os	
  testes
-­‐	
  Testes	
  em	
  linguagem	
  natural	
  com	
  
Cucumber	
  +	
  Selenium	
  
-­‐	
  Testes	
  automatizados	
  =	
  documentação	
  +	
  
executável	
  +	
  manutenível	
  
-­‐	
  Melhor	
  do	
  que	
  ferramentas	
  como	
  TestLink	
  
	
   -­‐	
  manutenção	
  da	
  documentação	
  
	
   -­‐	
  execução
15
Passo	
  3:	
  Refatorar	
  para	
  manter
16
Passo	
  3:	
  Refatorar	
  para	
  manter
-­‐ Uso	
  do	
  padrão	
  page	
  object	
  
-­‐ Escrever	
  funcionalidades	
  declarativas	
  
(não	
  incluir	
  informações	
  técnicas)
17
Passo	
  3:	
  Refatorar	
  para	
  manter
-­‐ Evitar	
  passos	
  que	
  contêm	
  duas	
  ações
18
Passo	
  3:	
  Refatorar	
  para	
  manter
-­‐ Evitar	
  passos	
  que	
  contêm	
  duas	
  ações
19
Revisão
-­‐ Automatizar	
  para:	
  
-­‐ ter	
  mais	
  segurança	
  de	
  que	
  novas	
  
funcionalidades	
  não	
  impactarão	
  
negativamente	
  as	
  existentes	
  
-­‐ feedback	
  constante	
  sobre	
  alterações	
  no	
  
código
20
Revisão
-­‐ Automatizar	
  em	
  3	
  passos:	
  
-­‐ definir	
  valor	
  de	
  negócio	
  utilizando	
  
ferramenta	
  de	
  BDD	
  
-­‐ utilizar	
  biblioteca	
  de	
  automação	
  junto	
  com	
  
padrões	
  de	
  projeto	
  como	
  page	
  object	
  para	
  
implementar	
  a	
  face	
  de	
  negócio	
  da	
  
ferramenta	
  
-­‐ refatorar	
  código	
  de	
  teste
21
@taisedias
E	
  assim	
  criar	
  testes	
  automatizados	
  com	
  alto	
  
valor	
  de	
  negócio	
  e	
  baixo	
  custo	
  de	
  manutenção.

Mais conteúdo relacionado

Semelhante a MTC2015-Automatizar_testes_efetivos

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
 
BDD em Testes de Serviço
BDD em Testes de ServiçoBDD em Testes de Serviço
BDD em Testes de ServiçoRafael Lima
 
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
 
Teste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste vocêTeste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste vocêTiago Link
 
AutomaçãoWeb - Chaordic Academy
AutomaçãoWeb - Chaordic AcademyAutomaçãoWeb - Chaordic Academy
AutomaçãoWeb - Chaordic AcademyFausto Siqueira
 
Curso: Desenvolvimento de aplicativos híbridos (dia 2)
Curso: Desenvolvimento de aplicativos híbridos (dia 2)Curso: Desenvolvimento de aplicativos híbridos (dia 2)
Curso: Desenvolvimento de aplicativos híbridos (dia 2)Wennder Santos
 
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
 
Android Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na CloudAndroid Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na CloudiMasters
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosComunidade NetPonto
 
At Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionAt Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionLeonardo Molinari
 
At Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionAt Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionLeonardo Molinari
 
At Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionAt Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionLeonardo Molinari
 

Semelhante a MTC2015-Automatizar_testes_efetivos (20)

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
 
BDD em Testes de Serviço
BDD em Testes de ServiçoBDD em Testes de Serviço
BDD em Testes de Serviço
 
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
 
TesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdfTesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdf
 
Magento: Mitos vs Vantagens
Magento: Mitos vs VantagensMagento: Mitos vs Vantagens
Magento: Mitos vs Vantagens
 
Teste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste vocêTeste sua aplicação antes que ela teste você
Teste sua aplicação antes que ela teste você
 
AutomaçãoWeb - Chaordic Academy
AutomaçãoWeb - Chaordic AcademyAutomaçãoWeb - Chaordic Academy
AutomaçãoWeb - Chaordic Academy
 
Curso: Desenvolvimento de aplicativos híbridos (dia 2)
Curso: Desenvolvimento de aplicativos híbridos (dia 2)Curso: Desenvolvimento de aplicativos híbridos (dia 2)
Curso: Desenvolvimento de aplicativos híbridos (dia 2)
 
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?
 
DDD + BDD + TDD + Scrum
DDD + BDD + TDD + ScrumDDD + BDD + TDD + Scrum
DDD + BDD + TDD + Scrum
 
Android Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na CloudAndroid Dev Conference 2017 - Automação de Testes na Cloud
Android Dev Conference 2017 - Automação de Testes na Cloud
 
Utilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes UnitáriosUtilização de Mock Objects em Testes Unitários
Utilização de Mock Objects em Testes Unitários
 
Testes ágeis
Testes ágeisTestes ágeis
Testes ágeis
 
At Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionAt Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final Version
 
At Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionAt Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final Version
 
At Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final VersionAt Ma Qualidade Molinari V11 Final Version
At Ma Qualidade Molinari V11 Final Version
 
#{GCODE}
#{GCODE}#{GCODE}
#{GCODE}
 
Pensando Lean
Pensando LeanPensando Lean
Pensando Lean
 
Metralhando sua API
 Metralhando sua API Metralhando sua API
Metralhando sua API
 
Novidades do Magento 2
Novidades do Magento 2Novidades do Magento 2
Novidades do Magento 2
 

MTC2015-Automatizar_testes_efetivos

  • 1. 1 3  noções  básicas     para  automação  de   testes  efetivos Taíse  Dias  da  Silva
  • 2. 2 Apresentação Use  #TWnaMTC2015  e   siga  ThoughtWorks_pt   pra  concorrer  a  um  livro    @taisedias      taisedias                              taise-­‐dias-­‐da-­‐silva Taíse  Dias  da  Silva
  • 3. 3 Sumário 1.Por  que  automatizar  testes?   2.Passo  1:  definir  o  valor  do  negócio   3.Passo  2:  automatizar  os  testes   4.Passo  3:  refatorar  para  baixa  manutenção
  • 4. 4 Por  que  automatizar  testes? Source: http://gatariadavila.blogspot.com.br/
  • 5. 5 Por  que  automatizar  testes? Source: http://gatariadavila.blogspot.com.br/
  • 6. 6 Passo  1:  Definir  o  valor  do  negócio -­‐ Não  testar  por  testar   -­‐ Escrever  narrativas  -­‐  valor  da  funcionalidade   -­‐ Escrever  através  de  exemplos  em  texto  puro   antes  de  implementar  (BDD)   -­‐ Pegar  feedback  do  cliente   -­‐ E  se  estiver  errado?   -­‐ Vocabulário  específico  do  domínio  do   negócio   -­‐ Cucumber:  documentação  viva
  • 7. 7 Passo  1:  Definir  o  valor  do  negócio
  • 8. 8 Passo  1:  Definir  o  valor  do  negócio
  • 10. 10 Passo  2:  Automatizar  os  testes Selenium  Web  Driver:   -­‐ iniciada  em  2004  pelo  ThoughtWorker   Jason  Huggins   -­‐ simula  ações  no  browser   -­‐ movido  por  código,  linguagem  de   programação   PageObject:   -­‐ mapea  os  elementos  da  classe  em  uma   página  usando  seus  elementos
  • 14. 14 Passo  2:  Automatizar  os  testes -­‐  Testes  em  linguagem  natural  com   Cucumber  +  Selenium   -­‐  Testes  automatizados  =  documentação  +   executável  +  manutenível   -­‐  Melhor  do  que  ferramentas  como  TestLink     -­‐  manutenção  da  documentação     -­‐  execução
  • 15. 15 Passo  3:  Refatorar  para  manter
  • 16. 16 Passo  3:  Refatorar  para  manter -­‐ Uso  do  padrão  page  object   -­‐ Escrever  funcionalidades  declarativas   (não  incluir  informações  técnicas)
  • 17. 17 Passo  3:  Refatorar  para  manter -­‐ Evitar  passos  que  contêm  duas  ações
  • 18. 18 Passo  3:  Refatorar  para  manter -­‐ Evitar  passos  que  contêm  duas  ações
  • 19. 19 Revisão -­‐ Automatizar  para:   -­‐ ter  mais  segurança  de  que  novas   funcionalidades  não  impactarão   negativamente  as  existentes   -­‐ feedback  constante  sobre  alterações  no   código
  • 20. 20 Revisão -­‐ Automatizar  em  3  passos:   -­‐ definir  valor  de  negócio  utilizando   ferramenta  de  BDD   -­‐ utilizar  biblioteca  de  automação  junto  com   padrões  de  projeto  como  page  object  para   implementar  a  face  de  negócio  da   ferramenta   -­‐ refatorar  código  de  teste
  • 21. 21 @taisedias E  assim  criar  testes  automatizados  com  alto   valor  de  negócio  e  baixo  custo  de  manutenção.