SlideShare uma empresa Scribd logo
1 de 35
Elevando a qualidade e
agilidade das
automações com Test
Cases
Samuel Simão
2
Desenvolvedor RPA UiARD UiPath
samuelsimao47@gmail.com
Samuel Simão
Palestrante
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
"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
Testes no desenvolvimento
de software
Parte I
6
Tipos de testes
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
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
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
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
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
13
Pirâmide de testes
14
Pirâmide de testes
• Quanto mais
testes na base,
menos esforço
será preciso nos
testes do topo
15
Por que ter códigos de teste?
16
Por que ter códigos de teste?
Detecção
de bugs
Garantir
Funcionamento
Responder a
mudanças
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
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
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
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
22
UiPath Test Suite
23
UiPath Test Suite
24
Arquitetura UiPath Test Suite
• Onde Test Cases
são escritos!
Boas práticas com códigos
de testes unitários
Parte II
26
Método FIRST adaptado
28
Método FIRST adaptado
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.
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;
31
Método FIRST adaptado
Replicable
Replicável
• Test Cases devem ser desenvolvidos
pensando que eles poderão e deverão
ser executados em outras máquinas que
não a do desenvolvedor.
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.
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.
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.
35
Método FIRST adaptado
Arquitetura limpa
• Ser implementado com a arquitetura Given,
When e Then.
UiPath Test Cases
Parte III
37
Abrindo o Studio...
38
Referências
LEMOS, Otavio. 278 - SEM TESTES NÃO HÁ AGILIDADE! 😮😮😮 | theWiseDev Agile. YouTube, 1 abr. 2023. Disponível em:
https://www.youtube.com/watch?v=iYBC73a8BbU. Acesso em: 17 jul. 2023.
MANIFESTO para Desenvolvimento Ágil de Software. Disponível em: https://agilemanifesto.org/iso/ptbr/manifesto.html. Acesso
em: 20 jul. 2023.
MATURANO, Lourenzo. Medium. Código Limpo: Testes de Unidade. Disponível em:
https://medium.com/@maturanolorenzo/c%C3%B3digo-limpo-testes-de-unidade- 107fcc9318db. Acesso em: 29 jun. 2023.
UiPath Docs. Guia do usuário do Studio. Casos de Teste. Disponível em: https://docs.uipath.com/pt-
BR/studio/standalone/2023.4/user-guide/application-testing-testcases. Acesso em: 23 jun. 2023.
UiPath Academy. Learning Plan Test Suite. Disponível em: Formação UiPath Test Suite. Disponível em:
https://academy.uipath.com/learning-plans/uipath-test-suíte.Acesso em: 12 jun. 2023.
UiPath Academy. Testing With Studio. Disponível em: https://academy.uipath.com/courses/rpa-testing-with-studio. Acesso em:
25 jun. 2023.

Mais conteúdo relacionado

Semelhante a Testando automações com casos de teste

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
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de softwareFelipe Bugov
 
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo CristalliDesenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo CristalliRio Info
 
IBM Rational Piores Práticas em Testes
IBM Rational Piores Práticas em TestesIBM Rational Piores Práticas em Testes
IBM Rational Piores Práticas em TestesFelipe Freire
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxRoberto Nunes
 
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...Automação de testes de desempenho para sistemas web utilizando a ferramenta J...
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...Leandro Ugioni
 
A importância de utilizar testes automatizados
A  importância   de utilizar  testes automatizadosA  importância   de utilizar  testes automatizados
A importância de utilizar testes automatizadosDiego Allan Oliveira
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesCamilo Ribeiro
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizadosThiago Ghisi
 
Sbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para ScrumSbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para ScrumEliane Collins
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaGabriela Patuci
 
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptxAnaKlyssia1
 
Palestra GUTS - Viabilidade da Automacao Teste Software e Demo QTP
Palestra GUTS - Viabilidade da Automacao Teste Software e Demo QTPPalestra GUTS - Viabilidade da Automacao Teste Software e Demo QTP
Palestra GUTS - Viabilidade da Automacao Teste Software e Demo QTPPriscila Coelho S. Blauth
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aLeonardo Molinari
 
Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareCloves da Rocha
 
Introdução ao Teste de Software - Uma abordagem prática
Introdução ao Teste de Software - Uma abordagem práticaIntrodução ao Teste de Software - Uma abordagem prática
Introdução ao Teste de Software - Uma abordagem práticaFabrício Campos
 
Estratégia de implantação de testes automatizados em ambiente ágil
Estratégia de implantação de testes automatizados em ambiente ágilEstratégia de implantação de testes automatizados em ambiente ágil
Estratégia de implantação de testes automatizados em ambiente ágilFlavia Mucedola
 
Qualidade - Porque testar seu software?
Qualidade - Porque testar seu software?Qualidade - Porque testar seu software?
Qualidade - Porque testar seu software?Adriano Bertucci
 
Testes: existe vida antes do TDD
Testes: existe vida antes do TDDTestes: existe vida antes do TDD
Testes: existe vida antes do TDDDiana Ungaro Arnos
 

Semelhante a Testando automações com casos de teste (20)

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?
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de software
 
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo CristalliDesenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
Desenvolvimento de software - novas abordagens e desafios - Ricardo Cristalli
 
IBM Rational Piores Práticas em Testes
IBM Rational Piores Práticas em TestesIBM Rational Piores Práticas em Testes
IBM Rational Piores Práticas em Testes
 
1° Madrugada de Testes
1° Madrugada de Testes1° Madrugada de Testes
1° Madrugada de Testes
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptx
 
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...Automação de testes de desempenho para sistemas web utilizando a ferramenta J...
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...
 
A importância de utilizar testes automatizados
A  importância   de utilizar  testes automatizadosA  importância   de utilizar  testes automatizados
A importância de utilizar testes automatizados
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por Testes
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
 
Sbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para ScrumSbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para Scrum
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
 
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx
 
Palestra GUTS - Viabilidade da Automacao Teste Software e Demo QTP
Palestra GUTS - Viabilidade da Automacao Teste Software e Demo QTPPalestra GUTS - Viabilidade da Automacao Teste Software e Demo QTP
Palestra GUTS - Viabilidade da Automacao Teste Software e Demo QTP
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
 
Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de Software
 
Introdução ao Teste de Software - Uma abordagem prática
Introdução ao Teste de Software - Uma abordagem práticaIntrodução ao Teste de Software - Uma abordagem prática
Introdução ao Teste de Software - Uma abordagem prática
 
Estratégia de implantação de testes automatizados em ambiente ágil
Estratégia de implantação de testes automatizados em ambiente ágilEstratégia de implantação de testes automatizados em ambiente ágil
Estratégia de implantação de testes automatizados em ambiente ágil
 
Qualidade - Porque testar seu software?
Qualidade - Porque testar seu software?Qualidade - Porque testar seu software?
Qualidade - Porque testar seu software?
 
Testes: existe vida antes do TDD
Testes: existe vida antes do TDDTestes: existe vida antes do TDD
Testes: existe vida antes do TDD
 

Testando automações com casos de teste

  • 1. Elevando a qualidade e agilidade das automações com Test Cases Samuel Simão
  • 2. 2 Desenvolvedor RPA UiARD UiPath samuelsimao47@gmail.com Samuel Simão Palestrante
  • 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
  • 5. Testes no desenvolvimento de software Parte I
  • 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
  • 13. 14 Pirâmide de testes • Quanto mais testes na base, menos esforço será preciso nos testes do topo
  • 14. 15 Por que ter códigos de teste?
  • 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
  • 22. 24 Arquitetura UiPath Test Suite • Onde Test Cases são escritos!
  • 23. Boas práticas com códigos de testes unitários Parte II
  • 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;
  • 28. 31 Método FIRST adaptado Replicable Replicável • Test Cases devem ser desenvolvidos pensando que eles poderão e deverão ser executados em outras máquinas que não a do desenvolvedor.
  • 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.
  • 32. 35 Método FIRST adaptado Arquitetura limpa • Ser implementado com a arquitetura Given, When e Then.
  • 35. 38 Referências LEMOS, Otavio. 278 - SEM TESTES NÃO HÁ AGILIDADE! 😮😮😮 | theWiseDev Agile. YouTube, 1 abr. 2023. Disponível em: https://www.youtube.com/watch?v=iYBC73a8BbU. Acesso em: 17 jul. 2023. MANIFESTO para Desenvolvimento Ágil de Software. Disponível em: https://agilemanifesto.org/iso/ptbr/manifesto.html. Acesso em: 20 jul. 2023. MATURANO, Lourenzo. Medium. Código Limpo: Testes de Unidade. Disponível em: https://medium.com/@maturanolorenzo/c%C3%B3digo-limpo-testes-de-unidade- 107fcc9318db. Acesso em: 29 jun. 2023. UiPath Docs. Guia do usuário do Studio. Casos de Teste. Disponível em: https://docs.uipath.com/pt- BR/studio/standalone/2023.4/user-guide/application-testing-testcases. Acesso em: 23 jun. 2023. UiPath Academy. Learning Plan Test Suite. Disponível em: Formação UiPath Test Suite. Disponível em: https://academy.uipath.com/learning-plans/uipath-test-suíte.Acesso em: 12 jun. 2023. UiPath Academy. Testing With Studio. Disponível em: https://academy.uipath.com/courses/rpa-testing-with-studio. Acesso em: 25 jun. 2023.