Você está na página 1de 20

<Hello world in tests/>

Quem é esse na fila William Ferreira Melquiades


do pão?
● Bacharel em Sistemas de
Informação - PUC
Minas/Contagem
● MBA em Gestão da Qualidade
de software - Unyleya
● CTFL,CTFL-PT,CTAL-TAE
● Analista de Automação Base 2
● 7+ anos de experiência em QA;
● Java, CSharp, Scala
● Automação Web,mobile e API;
● Love Learning, Amante de
Camp, mochilão e trilhas.
Agenda

- Pirâmide de testes
- Responsáveis na automação nas camadas
- Camada de serviço
- Estrutura código Gatling
- Dicas e links para Gatling
- Camada de UI
- Selenium Web Driver
- Pattern AAA
- Modelo Page Object
- Dicas e links para capturar elementos web
- Fluxogramas de Arquitetura
- Demonstração de ferramenta na camada de UI
- Características importantes
A famosa pirâmide de testes

Fonte: Nathalya Muniz acesso em encurtador.com.br/gmIS7 01/17


Os responsáveis dentro do time

Fonte: Nathalya Muniz acesso em encurtador.com.br/gmIS7 02/17


Camada Serviços

03/17
Estrutura do código em Gatling

Fonte: meetup.com/scaladores 04/17


Dicas e link para Gatling

Para variações dos entre os usuário virtuais nos testes veja alguns exemplos abaixo:.

fonte: https://gatling.io/docs/gatling/reference/current/core/injection/ 05/17


Camada de UI

06/17
Selenium Web Driver

● É uma biblioteca gratuita e de código aberto para automação de testes funcionais de


aplicações web acessadas via browser.
● Disponível para as linguagens: Java, C#, Python, Ruby, JavaScript, PHP e Perl;
● Outros frameworks são baseados na API do selenium.

07/17
Sobre o selenium
Padrão W3C

08/17
Pattern AAA

Parâmetros

Ações

Validações

09/17
Pattern AAA

10/17
Dicas e links para capturar elementos web

Como usar comando Xpath : https://devhints.io/xpath

Artigos com uso de Xpath:


https://www.lambdatest.com/blog/complete-guide-for-using-xpath-in-selenium-with-examples/

https://www.guru99.com/xpath-selenium.html

https://escoladedados.org/tutoriais/xpath-para-raspagem-de-dados-em-html/

11/17
Modelo Page Object

● mantém os testes e localizadores


de elementos separadamente.
● conceito de código limpo para
facilitar o entendimento e
manutenibilidade

Fonte: Site Martin Fowler 12/17


Fluxograma

Fonte: Certificação CTAL-TAE 13/17


Fluxograma da arquitetura

Fonte: Base2 Tecnologia 14/17


Bora codar?

https://github.com/williammelquiades/pocposengsoftware

encurtador.com.br/ekrCT
15/17
Características importantes

Responsabilidades únicas Não utilizar IF durante Acts ou Flows


Cada camada fará um tipo de atividade.
● Teste não mapeia elementos ● Não será reproduzido o comportamento exato do
● Pages não realizam asserções sistema
● Dificulta a refatoração
● Dificulta o entendimento do fluxo de teste
Código como documentação

● Código Legível e de fácil entendimento

16/17
Características importantes

Um flow por tela do sistema


● Evitar o agrupamento de ações de telas
distintas no mesmo Flow

Evitar múltiplos asserts DURANTE o teste

● Pensar em um caso de teste manual onde


temos no final o resultado esperado
● Conceito de falha e erro.

17/17

Você também pode gostar