• Like
  • Save
Técnicas de Teste
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Técnicas de Teste

  • 9,238 views
Published

Apresentação usada por Camilo Ribeiro para a Palestra "Técnicas de Teste no Ciclo de Desenvolvimento de Software" para o Centro Universitário UNA de Belo Horizonte em 25 de Março de 2010

Apresentação usada por Camilo Ribeiro para a Palestra "Técnicas de Teste no Ciclo de Desenvolvimento de Software" para o Centro Universitário UNA de Belo Horizonte em 25 de Março de 2010

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
9,238
On SlideShare
0
From Embeds
0
Number of Embeds
4

Actions

Shares
Downloads
0
Comments
0
Likes
11

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Técnicas de Teste no Ciclo de Vida
    de Desenvolvimento de Software
    Camilo Ribeiro
    TheBugBangTheory
  • 2. Camilo Falcão Ribeiro
    • Analista de Teste e Engenheiro de Processos na Squadra Tecnologia;
    • 3. Mais de quatro anos atuando em Teste de Software e Processos;
    • 4. Participação em mais de 40 projetos de Software;
    • 5. Participação em projetos de implantação do CMMi (todos os níveis);
    • 6. Graduado em Sistemas para Internet pela Faculdade Pitágoras;
    • 7. Pós graduando em Engenharia de Software pela UFMG;
    • 8. Certificado como especialista em Teste de Software pelo ISTQB e ALATS;
    • 9. Membro do comitê de inovação em Teste de Software ALATS;
    • 10. Mantedor do blog técnico www.bugbang.com.br;
    • 11. Especialista em implementação e customização da ferramenta TestLink.
  • Bug?
  • 12. Defeitos!
  • 13. Custo do Defeito
    Custo relativo para corrigir um defeito. Adaptado de (BOEHM, 1981).
    Distribuição do retrabalho pelas atividades de desenvolvimento de software. Adaptado de (WHEELER et al., 1996).
  • 14. Desenv. Cascata (1970)
    Requisitos
    Desenho
    Implementação
    Testes
    Manutenção
  • 15. Desenv. Cascata Realimentada
    Requisitos
    Desenho
    Implementação
    Testes
    Manutenção
  • 16. Ciclo de Vida em Espiral (XP, SCRUM)
    Requisitos
    Desenho
    Implementação
    Testes
    Produto completo?
    Não
    Sim
  • 17. Entrega Evolutiva
    Requisitos
    Análise
    Desenho Arquitetônico
    Desenho Detalhado
    Implementação
    Testes
    Não
    Produto completo?
    Sim
  • 18. Ciclo de Vida Quase Espiral
    RUP, Mbase, Praxis
    Conceito Inicial
    Requisitos
    Análise
    Desenho
    Implementação
    Testes
    Não
    Produto completo?
    Sim
    Implantação
  • 19. Como resolver esse problema?
  • 20.
  • 21. Teste de Software
    Inspeções
    -De requisitos
    -De casos de uso
    -De código fonte
    Testes de unidade
    Testes de integração
    -Entre classes
    -Entre sistemas
    Elaboração de Casos de Teste
    -Baseados em requisitos / Casos de Uso
    -Baseados em valores limites
    -Baseados em partições de equivalência
    -Baseado em cenários de negócio
    Testes de Sistema
    -A partir de casos e procedimentos de teste
    -Manual
    -Execução automática
    -Exploratórios
    Testes de Aceite
    -Baseado em cenários de negócio
    Testes de Requisitos não Funcionais
    -Carga
    -Estresse
    -Segurança
  • 22. Modelos “V” De Desenvolvimento
    Requisitos
    Teste de Aceite
    Análise
    Teste de Sistema
    Desenho
    Teste de Integração
    Teste de Unidade
    Implementação
    Verificação e Validação – Áreas de Processos do CMMi
  • 23. Inspeções
  • 24. Inspeções
  • 25. Teste de Unidade
    Classe Java
    Requisito
    Gera
    Métricas
    Especifica
    Classe de Teste
    Acessa
    Defeitos
    Acessa
    Implementa
    Dados(DB, XML)
    Bibliotecas
    (Junit)
    Cobertura de Código
  • 26. Caso de Teste
    ID - Nome
    Pré condições
    Procedimentos
    Entradas e Saídas
    CT
    SIS65
    Resultados esperados
    Pós Condições
  • 27. Elaboração de Casos de Teste
    Leitura do caso de uso
    Desenho dos fluxos do caso de uso
  • 28. Elaboração de Casos de Teste
    Identificação das regras e dos momentos em que essas regras são ativadas
  • 29. Elaboração de Casos de Teste
    Identificação dos cenários de Teste
  • 30. Elaboração de Casos de Teste
    Identificação dos cenários de Teste
    CT01
    CT02
    CT03
    CT04
    Cenários e Procedimentos de Teste
    CT05
    CT06
    CT07
    CT08
    CT09
    CT10
    CT11
    CT12
    CT14
    CT15
    CT16
    CT13
  • 31. Valores Limites
    Baseado em intervalos matemáticos, onde, devemos testar pelo menos os valores nas extremidades dos intervalos.
    Pode ser representado por gráficos, por conjuntos de valores ou por expressões matemáticas.
  • 32. Valores Limites
    Todos veículos fabricados entre 15/01/2009 e 20/04/2009 são chamados para recall:
    14/01/2009 – false15/01/2009 – true16/01/2009 – true
    19/04/2009 – true
    20/04/2009 – true
    21/04/2009 – false
    CT0N
    CT0N
    CT0N
    CT0N
    CT0N
    CT0N
    Todos veículos com chassi maior ou igual a WAUZZZ44ZGN082819 e menor que WAUZZZ44ZGN095821 são chamados para recall:
    WAUZZZ44ZGN082818 – false
    WAUZZZ44ZGN082819 – true
    WAUZZZ44ZGN082820 – true
    WAUZZZ44ZGN095820 – true
    WAUZZZ44ZGN095821 – false
    WAUZZZ44ZGN095822 – false
    CT0N
    CT0N
    CT0N
    CT0N
    CT0N
    CT0N
  • 33. Partição de Equivalência
    Baseado no princípio matemático dos conjuntos, onde, devemos testar pelo menos um elemento de cada conjunto distinto.
    Pode ser representado por gráficos, por conjuntos de valores ou por expressões de álgebra relacional.
    CT01
    “A”
    CT02
    “AB”
    CT03
    “B”
  • 34. Partição de Equivalência
    Qualquer veículo pode ser alugado:
    CT01
    Carro
    Veículos
    CT02
    Pick-up
    Caminhão
    Carro
    Pick-up
    CT03
    Caminhão
    1 de cada subconjunto
    CT04
    Ônibus
    Ônibus
    Ciclomotores
    Motoneta
    Motocicleta
    CT05
    Motocicleta
    Helicóptero
    CT06
    Motoneta
    CT07
    Helicóptero
  • 35. Testes de Sistema
    CT01
    Carro
    Leitura dos casos de teste
    Registro manual dos resultados
    CT02
    Pick-up
    Manual
    IBM Rational Quality Manager
    CT03
    Caminhão
    CT04
    Ônibus
    Programação dos casos de teste
    em ferramenta de automação e
    Record and replay
    CT05
    Motocicleta
    Automatizado
    CT06
    Motoneta
    *Desenvolver testes automatizados leva cerca de 3 a 10 vezes mais tempo que executá-los manualmente. O ganho está na redução do tempo de execução.(CBT-TST110)
    CT07
    Helicóptero
  • 36. Testes de Aceite
    Os testes de aceite são os testes executados pelo cliente, baseados nos requisitos.
    Abstração
    Caso de Teste de Aceite
    . . .
    Caso de Teste de Negócio
    Cenário de Teste
    Caso de Teste
  • 37. Testes de Aceite
    Cadastre o item X a R$80,00
    Cadastre o item Y a R$90,00
    Cadastre a promoção Z (Frete Gratuito em compras acima de 150,00)
    Cadastre-se como cliente João da Silva (joao@silva.com.br)
    Pesquise pelo item X
    Inclua o item X no carrinho
    Consulte o valor do frete para CEP 30626-000 (Frete R$15,00)
    Sistema informa Total = R$95,00
    Sistema recomenda o item Y com economia de R$15,00
    Selecione o Item Y
    Inclua o item Y no carrinho
    Consulte o valor do frete para CEP 30626-000 (Frete R$00,00)
    Sistema informa Total = R$95,00
    Confirme a compra
    Sistema solicita endereço baseado no CEP
    Informe o número e complemento (123, A)
    Sistema informa as condições de pagamento
    Informe “Visa a vista”
    . . .
    N . Cliente confirma recebimento do produto.
  • 38. Testes de Aceite
    Protótipos:
    1 – Acesse a tela principal
    2 – Acione o menu Livros
    3 – Selecione livro “O Símbolo Perdido” no banner de promoções
    4 – Sistema exibe descrição do livro
    5 –Solicite Comprar
    6 – Informe a Quantidade
    7 – Solicite Continuar
    8 – Sistema Solicita Login
  • 39. Testes de Requisitos Não Funcionais
    Para Kirner e Davis (1996), requisitos não-funcionais são declarações que definem as qualidades globais ou atributos a serem atendidos pelo sistema resultante.
    Segundo Cysneiros (1997), os requisitos não-funcionais, ao contrário dos requisitos funcionais, não expressam nenhuma função a ser realizada pelo software, e sim comportamentos e restrições que este software deve satisfazer.
    Os testes desses requisitos são normalmente executados com ajuda de ferramentas especializadas, com grande planejamento, avaliação arquitetural, aplicando técnicas avançadas.
  • 40. Eficiência
    Pesquisa
    Arquitetura e Rede
    Requisitos
    Funcionais
    Outros Requisitos
    Não Funcionais
    Recursos
    Algoritmo
    Acessos / Usuários
  • 41. Eficiência
    Medidores por servidor
    Registradores por página
    Sumário com as médias de resposta
  • 42. Personalize o seu modelo “V”
    Teste de Aceite
    Elaboração de Testes de Aceite
    Requisitos
    Teste de Sistema
    Elaboração de Casos de Teste
    Análise
    Automação de testes
    Análise Arquitetural
    Desenho
    Teste de Integração
    Teste de Unidade
    Elaboração de Testes de Unidade
    Implementação
    Revisão ou Inspeção
    Validação com o cliente
  • 43. E assim por diante . . .
    •Desempenho:
    -Carga;
    -Estresse;
    -Maturidade.
    •Segurança:
    -XSS;
    -SQL Injection.
    •Usabilidade:
    - Acessibilidade;
    -Facilidade de uso.
    •CaixaBranca:
    -Cobertura de comandos;
    -Cobertura de decisão.
    •CaixaPreta:
    -Transição de Estado;
    -Tabela de decisão;
    -BaseadoemHistórias do usuário.
    E muitomais!
  • 44. Esse material foi inspecionado!
    Obrigado:
    • Amanda Magalhães
    • Elias Nogueira
    • Fabíola Lara
    • Ricardo Antunes
    • Vanessa Vaz
    E aindadeveteralguns bugs . . . 
  • 45. Dúvidas?
    camilo@camiloribeiro.com.br - www.bugbang.com.br
  • 46. Bibliografia
    •Myers, Glenford J. (1979). The Art of Software Testing. John Wiley and Sons. ISBN 0-471-04328-1.
    •BOEHM, B.W., 1981, Software Engineering Economics, Prentice Hall.
    •WHEELER, D.A., BRYKEZYNSKI, B., MEESON, R.N., 1996, Software Inspections: AnIndustry Best Practice, IEEE ComputerSociety.
    • PRESSMAN, R.S., 2001, Software Engineering: A Practitioner´s Approach, Fifth Edition, McGraw Hill.
    •[ISO9126] ISO/IEC 9126-1:2001, Software Engineering – Software Product Quality
    •ISQTQB Glossário de termosusados no Teste de Software Versão 1.0
    •FoundationLevel ISTQB Syllabus, ISTQB
    •PÁDUA FILHO (2003), Wilson. Engenharia de Software– Fundamentos, Métodos e Padrões. 3ª Edição. LTC Editora, 2009.
    •RIOS, E., MOREIRA, T., SOUZA, A., CRISTALLI, R . Base de Conhecimento em Teste de Software 2ª Edição. Martins, 2007.
    •IEEE Std 829-2008.
    •Kirner, T. G., Davis, A. M. (1996) “Nonfunctional Requirements of Real-Time Systems; Advances in Computers”, vol. 42
    •Cysneiros, L. M., Leite, J.C.S.P (2004) “A Framework for IntegratingNon-FunctionalRequirementsinto Conceptual Models”, IEEE
    transactions on software engineering, Vol. 30, No. 5.
    •CBT-TST110, Principles of Test Automatization for GUI Testing. IBM.
  • 47. Muito Obrigado!