SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
http://www.takenami.com.br




Introdução a Testes de
      Software
            Igor Takenami

       itakenami@gmail.com
    http://twitter.com/itakenami


            Versão 1.0
http://www.takenami.com.br




“Sempre existe defeito em um SW mas com o
  passar do tempo os problemas ficam mais
        difíceis de serem detectados”

“Os testes podem mostrar a presença de erro
           mas não a sua ausência”
                                     Dijkstra
http://www.takenami.com.br




     Verificação & Validação (V&V)

 Assegurar o funcionamento de acordo com o
que foi especificado e atenda aos requisitos dos
                 stakeholders
http://www.takenami.com.br



           Onde aplicamos V&V
• Revisão dos requisitos
• Revisões da análise e do projeto
• Inspeções de Código
• Testes
http://www.takenami.com.br



                 Verificação
• Averiguar se o software está de acordo com as
 especificações preestabelecidas
• Estamos construindo certo o produto?
• verifica problemas e defeitos nos componentes
 prontos
http://www.takenami.com.br



                 Validação
• Confirmar se a especificação é apropriado e
 consiste com os requisitos do Stakeholder
• Estamos construindo o produto certo?
• Avalia se a construção do componente segue os
 requisitos predefinidos.
http://www.takenami.com.br




         Verificação                                     Validação
Averiguar se o software está de acordo com   Confirmar se a especificação é apropriado e
     as especificações preestabelecidas       consiste com os requisitos do Stakeholder




  Estamos construindo certo o produto?
                                               Estamos construindo o produto certo?



     Verifica problemas e defeitos nos        Avalia se a construção do componente segue
          componentes prontos                          os requisitos predefinidos.
http://www.takenami.com.br



                        Técnica de V&V
• Estática
  - Não envolve a execução do produto
  - Revisões
    a) Revisão de código
    b) Revisão em par

• Dinâmica
  - Testes
    a) Caixa Branca e Preta
    b) Estresse
    c) Integração
    d) Aceitação
http://www.takenami.com.br



    Princípios de Teste de Software
• Quando Planejado (sistêmica e rigorosa) =
 Confiabilidade e Qualidade do SW
• Tempo X Custo X Quantidade de Defeitos
• Devem ser planejados (Tempo, Ferramentas e
 Pessoas)
• Teste Primeiros no XP: Identifica o que será
 testado (Entradas e Saídas), auxilia na codificação
http://www.takenami.com.br



    Princípios de Teste de Software
• Pareto
 - 80% dos resultados estão estão relacionados a 20%
   de nossos esforços
 - Joseph Juran (20% dos componentes de um software
   concentram 80% dos defeitos)
 - Concentrar seus esforços no pronto mais frágil do
   sistema
• Confiabilidade
 - Probabilidade de operar sem apresentar falhas
http://www.takenami.com.br



                   Casos de Testes
• Possibilidade de casos de teste podem ser astronômicas
  - int qualquer(char b) = 256 combinações possíveis
  - Se [int qualquer(char b, int i)] sendo i um inteiro de 32bis: 28
    x 232
  - Mais de um trilhão de possibilidades
  - Com 1 milhão de combinações por segundo seriam
    necessários 12 dias para testar tudo
• Cobertura: Maior numero de possibilidades para
 execução de um casos de teste
http://www.takenami.com.br



               Plano de Teste
• Propõe um planejamento com um padrão a ser
 seguido.
• Padrão para Plano de Teste: IEEE 829-1998
http://www.takenami.com.br



           Fatores Psicológicos
• “O autor não possui nenhuma motivação
 psicológica para inventar casos de teste que
 demonstrem que o seu produto está com falhas
 ou errado” (Yourdon,1989)
• “O código é o resultado do trabalho intelectual
 do programador, procurar erros é uma especie
 de ataque a suas próprias
 convicções” (Weinberg,1971)
http://www.takenami.com.br



         Dissonância Cognitiva
• Resistência a cumprir a tarefa
• Os testes são sempre feitos com valores óbvios
 enquanto deveriam ser testados com situações
 “impossíveis”
http://www.takenami.com.br



                    Cobertura
• Cobrir o maior numero possíveis de
 possibilidades
 - if (a==b) e if (a>=b)
 - Testar {a=1;b=2} Estaria certo para os 2 casos.
 - O correto seria {a=2;b=1}
http://www.takenami.com.br



            Análise de Mutantes
• Gerar versões com defeitos e verificar se os
 casos de teste são capazes de distinguir tais
 programas
• Versões defeituosas são chamados mutantes
• São feitos por modificações aleatórias
 - Substituição de sinal e retirada de uma linha
http://www.takenami.com.br



    Sendo P um programa e T casos de teste
• Execução de P para cada T
• Geração de mutantes M
• Execução do Mutantes (Separar mutante morto). Para os que
  não são mortos → Os casos de teste T não distinguem entre P e
  M ou P e M são equivalentes
• Calculo do Escore de mutação: N motos / N – N equivalentes
• Análise dos mutantes: se estiver próximo de 1 (quão próximo é
  definido pelo avaliador) , então se considera T um bom conjunto
  de testes para P
• A análise de mutantes clássica é inviável pois tem alto custo
  computacional. Uma técnica é criar mutações de requisitos e
  testar as especificações
http://www.takenami.com.br



           Classificação de Defeitos
• Conhecer os defeitos para tratar com a técnica correta
  - Uso de dados históricos quantitativos (CMMI nível 4)
  - Prevenção de defeitos (CMMI nível 5)
• Técnica para classificação de defeito: (Defect Prevenction
 Process) da IBM:
  - Analise causal (sistemática);
  - Equipe de ação;
  - Reuniões de partida;
  - Ferramentas e base de dados para registro de informação
  - Redução em média de 50% dos defeitos.
http://www.takenami.com.br



   Classificação de defeitos adotado pela HP
• Origem: Onde?
• Tipo: O quê?
• Modo: Por quê?
http://www.takenami.com.br




Dúvidas ?

Mais conteúdo relacionado

Mais procurados

Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizadosThiago Ghisi
 
Testes Automatizados de Software
Testes Automatizados de SoftwareTestes Automatizados de Software
Testes Automatizados de SoftwareMaurício Aniche
 
Testes Unitários/Integrados
Testes Unitários/IntegradosTestes Unitários/Integrados
Testes Unitários/IntegradosGiovanni Bassi
 
Testes De Software - Uma Visão Geral
Testes De Software - Uma Visão GeralTestes De Software - Uma Visão Geral
Testes De Software - Uma Visão Geralpaulo peres
 
Testes de Software - Fundamentos
Testes de Software - FundamentosTestes de Software - Fundamentos
Testes de Software - FundamentosLucas Amaral
 
Introdução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareIntrodução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareCamilo Ribeiro
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aLeonardo Molinari
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código LegadoCesar Romero
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidaderzauza
 
Por que automatizar testes de software?
Por que automatizar testes de software?Por que automatizar testes de software?
Por que automatizar testes de software?Samuel Lourenço
 
TDD: Técnicas, Benefícios e Limitação
TDD: Técnicas, Benefícios e Limitação TDD: Técnicas, Benefícios e Limitação
TDD: Técnicas, Benefícios e Limitação Icaro Camelo
 
Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2Fernando Palma
 
TDD para "meros mortais"
TDD para "meros mortais"TDD para "meros mortais"
TDD para "meros mortais"thiagobapt
 

Mais procurados (20)

Testes de Sofware
Testes de SofwareTestes de Sofware
Testes de Sofware
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
 
Testes Automatizados de Software
Testes Automatizados de SoftwareTestes Automatizados de Software
Testes Automatizados de Software
 
Testes Unitários/Integrados
Testes Unitários/IntegradosTestes Unitários/Integrados
Testes Unitários/Integrados
 
Testes De Software - Uma Visão Geral
Testes De Software - Uma Visão GeralTestes De Software - Uma Visão Geral
Testes De Software - Uma Visão Geral
 
Testes de Software - Fundamentos
Testes de Software - FundamentosTestes de Software - Fundamentos
Testes de Software - Fundamentos
 
Introdução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareIntrodução a Automação de Teste de Software
Introdução a Automação de Teste de Software
 
Ctai Teste De Software Aula 2
Ctai Teste De Software Aula 2Ctai Teste De Software Aula 2
Ctai Teste De Software Aula 2
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código Legado
 
Técnicas de Teste
Técnicas de TesteTécnicas de Teste
Técnicas de Teste
 
Mini aula de teste de software
Mini aula de teste de softwareMini aula de teste de software
Mini aula de teste de software
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidade
 
Aula - Teste de Software
Aula - Teste de SoftwareAula - Teste de Software
Aula - Teste de Software
 
Testes de unidade - Conhecendo e aplicando
Testes de unidade - Conhecendo e aplicandoTestes de unidade - Conhecendo e aplicando
Testes de unidade - Conhecendo e aplicando
 
Por que automatizar testes de software?
Por que automatizar testes de software?Por que automatizar testes de software?
Por que automatizar testes de software?
 
TDD: Técnicas, Benefícios e Limitação
TDD: Técnicas, Benefícios e Limitação TDD: Técnicas, Benefícios e Limitação
TDD: Técnicas, Benefícios e Limitação
 
Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2
 
Unit test & TDD
Unit test & TDDUnit test & TDD
Unit test & TDD
 
TDD para "meros mortais"
TDD para "meros mortais"TDD para "meros mortais"
TDD para "meros mortais"
 

Destaque

Desenvolvimento para iOS
Desenvolvimento para iOSDesenvolvimento para iOS
Desenvolvimento para iOSIgor Takenami
 
Introdução a Qualidade de Software
Introdução a Qualidade de SoftwareIntrodução a Qualidade de Software
Introdução a Qualidade de SoftwareIgor Takenami
 
QA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatosQA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatosBruno Fernandes "PorKaria"
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitDomingos Teruel
 
Testes de software
Testes de softwareTestes de software
Testes de softwareteste
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioAdriano Bertucci
 
Qualidade de Software no século XXI
Qualidade de Software no século XXIQualidade de Software no século XXI
Qualidade de Software no século XXIBruno Penteado
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De Processo
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De ProcessoUma Metodologia Para Teste De Software No Contexto Da Melhoria De Processo
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De Processocrc1404
 
[GUTS-RS] Testes em Projetos de Implantação de ERP
[GUTS-RS] Testes em Projetos de Implantação de ERP[GUTS-RS] Testes em Projetos de Implantação de ERP
[GUTS-RS] Testes em Projetos de Implantação de ERPGUTS-RS
 
Homologação requisitos para validar sistemas erp
Homologação   requisitos para validar sistemas erpHomologação   requisitos para validar sistemas erp
Homologação requisitos para validar sistemas erpSérgio Caldeira
 
[GUTS-RS] Performance Engineering
[GUTS-RS] Performance Engineering[GUTS-RS] Performance Engineering
[GUTS-RS] Performance EngineeringGUTS-RS
 
Lean para potencializar a qualidade no software
Lean para potencializar a qualidade no softwareLean para potencializar a qualidade no software
Lean para potencializar a qualidade no softwareDionatan default
 
Introdução a Gerência de Configuração
Introdução a Gerência de ConfiguraçãoIntrodução a Gerência de Configuração
Introdução a Gerência de ConfiguraçãoIgor Takenami
 
SOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a ServiçosSOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a Serviçosalinebicudo
 
Introdução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIntrodução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIgor Takenami
 
Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)Marcelo Sávio
 
Papéis em Teste e Qualidade de Software
Papéis em Teste e Qualidade de SoftwarePapéis em Teste e Qualidade de Software
Papéis em Teste e Qualidade de SoftwareCamilo Ribeiro
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIgor Takenami
 

Destaque (20)

Desenvolvimento para iOS
Desenvolvimento para iOSDesenvolvimento para iOS
Desenvolvimento para iOS
 
Introdução a Qualidade de Software
Introdução a Qualidade de SoftwareIntrodução a Qualidade de Software
Introdução a Qualidade de Software
 
QA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatosQA for noobs - qualidade de software para novatos
QA for noobs - qualidade de software para novatos
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnit
 
Testes de software
Testes de softwareTestes de software
Testes de software
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual Studio
 
Qualidade de Software no século XXI
Qualidade de Software no século XXIQualidade de Software no século XXI
Qualidade de Software no século XXI
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De Processo
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De ProcessoUma Metodologia Para Teste De Software No Contexto Da Melhoria De Processo
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De Processo
 
[GUTS-RS] Testes em Projetos de Implantação de ERP
[GUTS-RS] Testes em Projetos de Implantação de ERP[GUTS-RS] Testes em Projetos de Implantação de ERP
[GUTS-RS] Testes em Projetos de Implantação de ERP
 
Homologação requisitos para validar sistemas erp
Homologação   requisitos para validar sistemas erpHomologação   requisitos para validar sistemas erp
Homologação requisitos para validar sistemas erp
 
[GUTS-RS] Performance Engineering
[GUTS-RS] Performance Engineering[GUTS-RS] Performance Engineering
[GUTS-RS] Performance Engineering
 
Lean para potencializar a qualidade no software
Lean para potencializar a qualidade no softwareLean para potencializar a qualidade no software
Lean para potencializar a qualidade no software
 
Introdução a Gerência de Configuração
Introdução a Gerência de ConfiguraçãoIntrodução a Gerência de Configuração
Introdução a Gerência de Configuração
 
SOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a ServiçosSOA - Arquitetura Orientada a Serviços
SOA - Arquitetura Orientada a Serviços
 
Introdução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIntrodução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a Serviços
 
Introdução ao RUP
Introdução ao RUPIntrodução ao RUP
Introdução ao RUP
 
Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)Arquitetura Orientada a Servicos (SOA)
Arquitetura Orientada a Servicos (SOA)
 
Papéis em Teste e Qualidade de Software
Papéis em Teste e Qualidade de SoftwarePapéis em Teste e Qualidade de Software
Papéis em Teste e Qualidade de Software
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
 

Semelhante a Introdução a Testes de Software

Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMAdriano Bertucci
 
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
 
Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012Adriano Bertucci
 
Automação de Teste - BRATESTE 2010
Automação de Teste - BRATESTE 2010Automação de Teste - BRATESTE 2010
Automação de Teste - BRATESTE 2010Elias Nogueira
 
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...minastestingconference
 
Importância de Testes Automatizados para Continuous Delivery & DevOps
Importância de Testes Automatizados para Continuous Delivery & DevOpsImportância de Testes Automatizados para Continuous Delivery & DevOps
Importância de Testes Automatizados para Continuous Delivery & DevOpsSamanta Cicilia
 
Aula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfAula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfHoctairBernardino
 
BaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de SoftwareBaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de SoftwareAdriano Bertucci
 
Teste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoTeste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoJoeldson Costa Damasceno
 
Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfMichaelArrais1
 
[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes Automatizados[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes AutomatizadosSamanta Cicilia
 
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
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesCamilo Ribeiro
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de softwareFelipe Bugov
 
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
 

Semelhante a Introdução a Testes de Software (20)

Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
 
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
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012Qualidade de Software com Visual Studio 2012
Qualidade de Software com Visual Studio 2012
 
Automação de Teste - BRATESTE 2010
Automação de Teste - BRATESTE 2010Automação de Teste - BRATESTE 2010
Automação de Teste - BRATESTE 2010
 
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
 
Importância de Testes Automatizados para Continuous Delivery & DevOps
Importância de Testes Automatizados para Continuous Delivery & DevOpsImportância de Testes Automatizados para Continuous Delivery & DevOps
Importância de Testes Automatizados para Continuous Delivery & DevOps
 
Aula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfAula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdf
 
BaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de SoftwareBaixadaTech 2012 - Qualidade de Software
BaixadaTech 2012 - Qualidade de Software
 
Teste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoTeste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e Validação
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Teste de software
Teste de software Teste de software
Teste de software
 
Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdf
 
[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes Automatizados[DevOps Carioca] Testes Automatizados
[DevOps Carioca] Testes Automatizados
 
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?
 
Dba Testes Gerentes B2
Dba Testes Gerentes B2Dba Testes Gerentes B2
Dba Testes Gerentes B2
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por Testes
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de software
 
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
 
Qualidade e Testes de Software
Qualidade e Testes de SoftwareQualidade e Testes de Software
Qualidade e Testes de Software
 

Último

Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....LuizHenriquedeAlmeid6
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESEduardaReis50
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfEmanuel Pio
 
Slides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxSlides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxMauricioOliveira258223
 
Araribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioAraribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioDomingasMariaRomao
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesFabianeMartins35
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números Mary Alvarenga
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOAulasgravadas3
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfWagnerCamposCEA
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfHELENO FAVACHO
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdfLeloIurk1
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2Maria Teresa Thomaz
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 

Último (20)

Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdf
 
Slides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxSlides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptx
 
Araribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioAraribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medio
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 

Introdução a Testes de Software

  • 1. http://www.takenami.com.br Introdução a Testes de Software Igor Takenami itakenami@gmail.com http://twitter.com/itakenami Versão 1.0
  • 2. http://www.takenami.com.br “Sempre existe defeito em um SW mas com o passar do tempo os problemas ficam mais difíceis de serem detectados” “Os testes podem mostrar a presença de erro mas não a sua ausência” Dijkstra
  • 3. http://www.takenami.com.br Verificação & Validação (V&V) Assegurar o funcionamento de acordo com o que foi especificado e atenda aos requisitos dos stakeholders
  • 4. http://www.takenami.com.br Onde aplicamos V&V • Revisão dos requisitos • Revisões da análise e do projeto • Inspeções de Código • Testes
  • 5. http://www.takenami.com.br Verificação • Averiguar se o software está de acordo com as especificações preestabelecidas • Estamos construindo certo o produto? • verifica problemas e defeitos nos componentes prontos
  • 6. http://www.takenami.com.br Validação • Confirmar se a especificação é apropriado e consiste com os requisitos do Stakeholder • Estamos construindo o produto certo? • Avalia se a construção do componente segue os requisitos predefinidos.
  • 7. http://www.takenami.com.br Verificação Validação Averiguar se o software está de acordo com Confirmar se a especificação é apropriado e as especificações preestabelecidas consiste com os requisitos do Stakeholder Estamos construindo certo o produto? Estamos construindo o produto certo? Verifica problemas e defeitos nos Avalia se a construção do componente segue componentes prontos os requisitos predefinidos.
  • 8. http://www.takenami.com.br Técnica de V&V • Estática - Não envolve a execução do produto - Revisões a) Revisão de código b) Revisão em par • Dinâmica - Testes a) Caixa Branca e Preta b) Estresse c) Integração d) Aceitação
  • 9. http://www.takenami.com.br Princípios de Teste de Software • Quando Planejado (sistêmica e rigorosa) = Confiabilidade e Qualidade do SW • Tempo X Custo X Quantidade de Defeitos • Devem ser planejados (Tempo, Ferramentas e Pessoas) • Teste Primeiros no XP: Identifica o que será testado (Entradas e Saídas), auxilia na codificação
  • 10. http://www.takenami.com.br Princípios de Teste de Software • Pareto - 80% dos resultados estão estão relacionados a 20% de nossos esforços - Joseph Juran (20% dos componentes de um software concentram 80% dos defeitos) - Concentrar seus esforços no pronto mais frágil do sistema • Confiabilidade - Probabilidade de operar sem apresentar falhas
  • 11. http://www.takenami.com.br Casos de Testes • Possibilidade de casos de teste podem ser astronômicas - int qualquer(char b) = 256 combinações possíveis - Se [int qualquer(char b, int i)] sendo i um inteiro de 32bis: 28 x 232 - Mais de um trilhão de possibilidades - Com 1 milhão de combinações por segundo seriam necessários 12 dias para testar tudo • Cobertura: Maior numero de possibilidades para execução de um casos de teste
  • 12. http://www.takenami.com.br Plano de Teste • Propõe um planejamento com um padrão a ser seguido. • Padrão para Plano de Teste: IEEE 829-1998
  • 13. http://www.takenami.com.br Fatores Psicológicos • “O autor não possui nenhuma motivação psicológica para inventar casos de teste que demonstrem que o seu produto está com falhas ou errado” (Yourdon,1989) • “O código é o resultado do trabalho intelectual do programador, procurar erros é uma especie de ataque a suas próprias convicções” (Weinberg,1971)
  • 14. http://www.takenami.com.br Dissonância Cognitiva • Resistência a cumprir a tarefa • Os testes são sempre feitos com valores óbvios enquanto deveriam ser testados com situações “impossíveis”
  • 15. http://www.takenami.com.br Cobertura • Cobrir o maior numero possíveis de possibilidades - if (a==b) e if (a>=b) - Testar {a=1;b=2} Estaria certo para os 2 casos. - O correto seria {a=2;b=1}
  • 16. http://www.takenami.com.br Análise de Mutantes • Gerar versões com defeitos e verificar se os casos de teste são capazes de distinguir tais programas • Versões defeituosas são chamados mutantes • São feitos por modificações aleatórias - Substituição de sinal e retirada de uma linha
  • 17. http://www.takenami.com.br Sendo P um programa e T casos de teste • Execução de P para cada T • Geração de mutantes M • Execução do Mutantes (Separar mutante morto). Para os que não são mortos → Os casos de teste T não distinguem entre P e M ou P e M são equivalentes • Calculo do Escore de mutação: N motos / N – N equivalentes • Análise dos mutantes: se estiver próximo de 1 (quão próximo é definido pelo avaliador) , então se considera T um bom conjunto de testes para P • A análise de mutantes clássica é inviável pois tem alto custo computacional. Uma técnica é criar mutações de requisitos e testar as especificações
  • 18. http://www.takenami.com.br Classificação de Defeitos • Conhecer os defeitos para tratar com a técnica correta - Uso de dados históricos quantitativos (CMMI nível 4) - Prevenção de defeitos (CMMI nível 5) • Técnica para classificação de defeito: (Defect Prevenction Process) da IBM: - Analise causal (sistemática); - Equipe de ação; - Reuniões de partida; - Ferramentas e base de dados para registro de informação - Redução em média de 50% dos defeitos.
  • 19. http://www.takenami.com.br Classificação de defeitos adotado pela HP • Origem: Onde? • Tipo: O quê? • Modo: Por quê?