3 noções básicas para automação de testes efetivos - taíse dias da silva

21
1 3 noções básicas para automação de testes efetivos Taíse Dias da Silva

Upload: minastestingconference

Post on 19-Aug-2015

95 views

Category:

Software


1 download

TRANSCRIPT

Page 1: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

1

3  noções  básicas    para  automação  de  testes  efetivos

Taíse  Dias  da  Silva

Page 2: 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  ao  livro  Antologia  Brasil

   @taisedias      taisedias                              taise-­‐dias-­‐da-­‐silva

Taíse  Dias  da  Silva

Page 3: 3 noções básicas para automação de testes efetivos - 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

Page 4: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

4

Por  que  automatizar  testes?

Source: http://gatariadavila.blogspot.com.br/

Page 5: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

5

Por  que  automatizar  testes?

Source: http://gatariadavila.blogspot.com.br/

Page 6: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

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

Page 7: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

7

Passo  1:  Definir  o  valor  do  negócio

Page 8: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

8

Passo  1:  Definir  o  valor  do  negócio

Page 9: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

9

Passo  2:  Automatizar  os  testes

Page 10: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

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

Page 11: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

11

Passo  2:  Automatizar  os  testes

Page 12: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

12

Passo  2:  Automatizar  os  testes

Page 13: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

13

Passo  2:  Automatizar  os  testes

Page 14: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

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

Page 15: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

15

Passo  3:  Refatorar  para  manter

Page 16: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

16

Passo  3:  Refatorar  para  manter

-­‐ Uso  do  padrão  page  object  -­‐ Escrever  funcionalidades  declarativas  (não  incluir  informações  técnicas)

Page 17: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

17

Passo  3:  Refatorar  para  manter

-­‐ Evitar  passos  que  contêm  duas  ações

Page 18: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

18

Passo  3:  Refatorar  para  manter

-­‐ Evitar  passos  que  contêm  duas  ações

Page 19: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

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

Page 20: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

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

Page 21: 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva

21

@taisedias

E  assim  criar  testes  automatizados  com  alto  valor  de  negócio  e  baixo  custo  de  manutenção.