O que são Test Cases? Qual sua importância? Onde eles se encaixam em um ambiente de desenvolvimento ágil? Como criá-los no UiPath Studio? Em que tipo de workflow faz sentido sua aplicação? Estas e muitas outras questões serão respondidas com um pouco de teoria neste material e muita prática em nossa apresentação.
3. 3
1. Tipos de teste
2. Pirâmide de testes
3. Por que ter códigos de teste?
4. UiPath Test Suite
5. Método FIRST (Adaptado)
6. Prática I: Login ACME
7. Prática II: Validação de dados de
entrada
8. Prática III: Cenário real
Agenda Slide
4. 4
"Código de teste é tão importante como código
de produção e exige pensamento, design de
código e cuidado."
Robert C. Martin
Código Limpo
7. 8
Tipos de testes
Aceitação Sistema Integrado Unitário
Automação
Chrome - ACME
Login no site ACME
Confirmação de Status
Download report em Excel
Excel - Processamento
Formatação dos dados
Calcular linhas não vazias
Email
Capturar
email
Enviar email
Extrair
anexos
8. 9
Aceitação Sistema Integrado Unitário
• O teste de aceitação é realizado com o cliente ou stakeholders do processo.
• Nesses tipos de teste, é apresentado ao cliente as funcionalidades e sistemas
desenvolvidos a fim de buscar a aceitação do seu funcionamento.
Automação
Chrome - ACME
Login no site ACME
Confirmação de Status
Download report em Excel
Excel - Processamento
Formatação dos dados
Calcular linhas não vazias
Email
Capturar
email
Enviar email
Extrair
anexos
9. 10
Aceitação Sistema Integrado Unitário
• Testes de sistema, também chamados de end-to-end, são realizados em todas as
funcionalidades desenvolvidas de uma automação.
• Esses testes buscam simular a mesma experiência que o usuário/cliente teria com o sistema.
Automação
Chrome - ACME
Login no site ACME
Confirmação de Status
Download report em Excel
Excel - Processamento
Formatação dos dados
Calcular linhas não vazias
Email
Capturar
email
Enviar email
Extrair
anexos
10. 11
Aceitação Sistema Integrado Unitário
• Testes integrados são realizados com 2 ou mais subsistemas da automação.
• Nesse tipo de teste busca-se validar se os sistemas usados interagem entre si da forma
esperada.
Automação
Chrome - ACME
Login no site ACME
Confirmação de Status
Excel - Processamento
Formatação dos dados
Email
Capturar
email
Enviar email
Extrair
anexos
Download report em Excel Calcular linhas não vazias
11. 12
Aceitação Sistema Integrado Unitário
• Testes unitários são o menor nível possível de teste.
• Validam se uma função ou menor parte divisível do sistema funciona adequadamente.
Automação
Chrome - ACME
Login no site ACME
Confirmação de Status
Download report em Excel
Excel - Processamento
Formatação dos dados
Calcular linhas não vazias
Email
Capturar
email
Extrair
anexos
Enviar email
15. 16
Por que ter códigos de teste?
Detecção
de bugs
Garantir
Funcionamento
Responder a
mudanças
16. 18
Por que ter códigos de teste?
Detecção
de bugs
• Aumentam a chance
de detectar bugs no
código ainda em
Desenvolvimento.
Garantir
Funcionamento
Responder a
mudanças
17. 19
Por que ter códigos de teste?
Detecção
de bugs
Garantir
Funcionamento
• Reforçam a
qualidade do código
e afirmam seu
funcionamento.
Responder a
mudanças
18. 20
Por que ter códigos de teste?
Responder a
mudanças
• Promovem mais
confiança e rapidez
para responder as
mudanças da
automação.
Detecção
de bugs
Garantir
Funcionamento
19. 21
Por que ter códigos de teste?
Detecção
de bugs
Garantir
Funcionamento
Responder a
mudanças
• Aumentam a chance
de detectar bugs no
código ainda em
Desenvolvimento
• Reforçam a
qualidade do código
e afirmam seu
funcionamento
• Promovem mais
confiança e rapidez
para responder as
mudanças da
automação
26. 29
Método FIRST adaptado
Velocidade de
Execução
Fast
• Test Cases devem ser enxutos o
suficiente para serem executados em
questão de segundos ou até minutos.
27. 30
Método FIRST adaptado
Independen
t
Independência e
Modularidade
• Test Cases devem ser pensados para
serem independentes para rodar.
• O projeto deve ser dividido em
Workflows atômicos que possuem um
único objetivo;
29. 32
Método FIRST adaptado
Self-Validating
Auto validável
• Testes unitários devem retornar
verdadeiro ou falso.
• Eles devem ser capazes de dizer se o
teste deu certo ou não sem a
necessidade de alguém analisar a
situação.
30. 33
Método FIRST adaptado
Timely
Atualizado
• Os testes devem sempre estar
atualizados e condizente com a
arquitetura pensada para o projeto. Se
o seu código de produção mudar, seu
teste deve ser alterado logo em
seguida.
31. 34
Método FIRST adaptado
Um único
objetivo
• Um Test Case deve ter o mínimo de
verificações o possível. Para isso, é
preciso que um Test Case tenha
somente um objetivo de teste.