SlideShare a Scribd company logo
1 of 44
Teste de Software: Introdução à Qualidade Camilo Ribeiro  Esp. SE, ISTQB, CBTS
Consultor em arquitetura de testes e processos pela  Caresoft Tecnologia ; Líder de Qualidade e Processos pela  Alltcom Sistemas ; Palestrante em universidades como  PUC Minas ,  UNI-BH  e  UNA . Mais de  quatro anos  atuando em Teste de Software e Processos; Participação em mais de  40 projetos  de Software; Participação em projetos de implantação do  CMMi  (todos os níveis); Graduado em Sistemas para Internet pela  Faculdade Pitágoras ; Pós graduado em Engenharia de Software pela  UFMG ; Aluno da pós-graduação e pesquisa em Ciência da Computação na  UFMG ; Certificado como especialista em Teste de Software pelo  ISTQB  e  ALATS ; Membro do comitê de inovação em Teste de Software  ALATS ; Mantedor do blog técnico  www.bugbang.com.br ; Especialista em implementação e customização da ferramenta  TestLink .
Agenda Camilo Ribeiro – camilo@camiloribeiro.com Breve introdução sobre qualidade e teste de software Mercado de trabalho e papéis Verificação, validação e QA Mitos sobre teste de software Introdução ao pensamento de testador Derivando casos de teste de casos de uso Técnicas de teste
O que é Qualidade? Qualidade  é um conceito subjetivo que está relacionado diretamente às percepções de cada indivíduo. Diversos fatores como cultura, modelos mentais, tipo de produto ou serviço prestado, necessidades e expectativas influenciam diretamente nesta definição. Camilo Ribeiro – camilo@camiloribeiro.com
O que é teste de software? •  Testar é o processo de executar um programa ou sistema com a intenção de encontrar defeitos (teste negativo) (Myers, 1979) •  Testar é qualquer atividade que, a partir da avaliação de um atributo ou capacidade, permita determinar se o programa ou sistema obtém os resultados desejados (Hetzel, 1988) • Testar é verificar se o software está fazendo o que deveria fazer, de acordo com seus requisitos, e se não está fazendo o que não deveria fazer (Rios, Cristalli, Moreira e Souza, 2003) Camilo Ribeiro – camilo@camiloribeiro.com
O que é teste de software? Processo que consiste em todas as atividades do ciclo de vida, tanto estáticas quanto dinâmicas, voltadas para o planejamento, preparação e avaliação de produtos de software e produtos de trabalho relacionados a fim de determinar se eles satisfazem os requisitos especificados e demonstrar que estão aptos para sua finalidade e para a detecção de defeitos. (“Testing”, Glossário ISTQB 2007) Camilo Ribeiro – camilo@camiloribeiro.com
Perfil do profissional de teste de software  Pesquisa realizada pelo Cristiano Caetano em 2007 (pesquisa 2010 em andamento  www.testexpert.com.br ) Pesquisa Completa: “ Cargos e Salários - Quanto ganha o profissional de teste e qualidade de software.pdf ” Camilo Ribeiro – camilo@camiloribeiro.com
Papéis no Rational Unified Process (RUP) Camilo Ribeiro – camilo@camiloribeiro.com
Papéis e Cargos Papel != Cargo O RUP usa uma analogia onde os colaboradores de um projeto trocam de “chapéus” várias vezes durante o processo de desenvolvimento de software. Se assume o papel de gerente de Configuração, não quer dizer que é um Gerente de projetos. Camilo Ribeiro – camilo@camiloribeiro.com
Como o mercado informal classifica? Liderança  Gestão de projetos Organizacional Negócios e Processos Técnica Arquitetura de Software Camilo Ribeiro – camilo@camiloribeiro.com
Certificação profissional Certificação Brasileira de Teste de Software: Associação Latino-Americada de Teste de Software  www.alats.org.br Certified Tester Foundation Level; Certified Tester Advanced Level;  International Software Testing Qualifications Boarder  www.bstqb.org.br Certified Associate in Software Testing (CAST) ; Certified Software Quality Analyst (CSQA) ; Certified Software Tester (CSTE): Quality Assurance Institute www.qaibrasil.com.br/ Guia Completo para Certificações em Qualidade e Teste de Software - Versão 2008 Camilo Ribeiro – camilo@camiloribeiro.com
Custo aumenta exponencialmente ,[object Object],Custo relativo para corrigir um defeito. Adaptado de (BOEHM, 1981). Camilo Ribeiro – camilo@camiloribeiro.com
Verificação, validação e QA Camilo Ribeiro – camilo@camiloribeiro.com Se a sua pergunta é... então você está falando de: Segui o processo? QA – Garantia de qualidade Fiz a coisa corretamente? Verificação Fiz a coisa certa? Validação
Quality Assurance (Garantia de Qualidade) “ Garantir que o processo seja seguido adequadamente e que seus produtos de trabalho sejam elaborados nos momentos adequados.” - CMMi for Development 1.2 Ligado ao processo da organização Camilo Ribeiro – camilo@camiloribeiro.com
Verificação “ O propósito da verificação é demonstrar que o produto ou seus produtos de trabalho atendem aos seus requisitos específicos.” - CMMi for Development 1.2 Ligado a Sintaxe, o como . . . Camilo Ribeiro – camilo@camiloribeiro.com
Validação “ O objetivo da validação é demonstrar que um componente do produto cumpre o seu uso pretendido quando colocado em seu ambiente pretendido.” - CMMi for Development 1.2 Semântica, o que . . . Camilo Ribeiro – camilo@camiloribeiro.com
Mitos sobre teste de software ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Camilo Ribeiro – camilo@camiloribeiro.com
Transparência do teste Requisitos / Negócios (Abstração) Teste de caixa branca Teste baseado na análise da estrutura interna de um componente ou sistema. (Glossário ISTQB) Teste de caixa preta Teste, funcional ou não funcional, sem referência à estrutura interna do componente ou do sistema. (Glossário ISTQB) Camilo Ribeiro – camilo@camiloribeiro.com
Níveis, técnicas e tipos de teste Camilo Ribeiro – camilo@camiloribeiro.com Técnicas de Teste Nível de Teste Dimensões da Qualidade segundo o RUP Funcionalidade Confiabilidade Usabilidade Desempenho Suportabilidade Alguns tipos de Teste Caixa Branca Teste de Unidade Teste de Integração Segurança Integridade Carga Configuração Caixa Cinza Teste de Sistema Funcional Regressão Usabilidade Caixa Preta Teste de Aceitação Volume Maturidade Estresse Instalação Como Testar Quando Testar O que Testar
O que posso usar para criar testes? Requisitos Estórias de Usuário Dados Casos de uso Diagramas da UML Bugs Experiência Código Fonte Checklist Camilo Ribeiro – camilo@camiloribeiro.com Software fechado
Pense como um testador ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Camilo Ribeiro – camilo@camiloribeiro.com
O que testar em um copo? Camilo Ribeiro – camilo@camiloribeiro.com
O que testar em um copo? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Camilo Ribeiro – camilo@camiloribeiro.com
Pirâmide de dependência  Camilo Ribeiro – camilo@camiloribeiro.com
Caso de Uso Camilo Ribeiro – camilo@camiloribeiro.com
Cenários de Teste Camilo Ribeiro – camilo@camiloribeiro.com
Casos de teste A, B, C, D, E M, N, O, P, Q V, W, X, Y, Z Cenário 3 do Caso de Uso 27 Caso de Teste 1 Caso de Teste 2 Caso de Teste 3 Camilo Ribeiro – camilo@camiloribeiro.com
Elaborando Casos de teste a partir de casos de uso ,[object Object],[object Object],Camilo Ribeiro – camilo@camiloribeiro.com
Elaborando Casos de teste a partir de casos de uso ,[object Object],Camilo Ribeiro – camilo@camiloribeiro.com
Elaborando Casos de teste a partir de casos de uso ,[object Object],Camilo Ribeiro – camilo@camiloribeiro.com
Elaborando Casos de teste a partir de casos de uso Cenários e Procedimentos de Teste CT01 CT02 CT03 CT04 CT05 CT06 CT07 CT08 CT09 CT10 CT11 CT12 CT14 CT15 CT16 CT13 ,[object Object],Camilo Ribeiro – camilo@camiloribeiro.com
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. Camilo Ribeiro – camilo@camiloribeiro.com
Valores limites Todos veículos fabricados entre 15/01/2009 e 20/04/2009 são chamados para recall: Todos veículos com chassi maior ou igual a WAUZZZ44ZGN082819 e menor que WAUZZZ44ZGN095821 são chamados para recall: CT0N CT0N CT0N CT0N CT0N CT0N 14/01/2009 – false 15/01/2009 – false 16/01/2009 – true  19/04/2009 – true  20/04/2009 – false  21/04/2009 – false  WAUZZZ44ZGN082818 – false  WAUZZZ44ZGN082819 – true  WAUZZZ44ZGN082820 – true  WAUZZZ44ZGN095820 – true  WAUZZZ44ZGN095821 – false  WAUZZZ44ZGN095822 – false  CT0N CT0N CT0N CT0N CT0N CT0N Camilo Ribeiro – camilo@camiloribeiro.com
Valores limites Imagine um sistema onde cada usuário pode publicar alguns avisos para serem exibidos na intranet, um telão ou em um outro dispositivo qualquer. Logado, o usuário informa qual o aviso, e qual o periodo que o aviso deve ser exibido. Ele pode cadastrar quantos avisos desejar, mas, no caso de uso de cadastro de avisos, existe uma regra: R001 - Um usuário não pode cadastrar dois avisos ocupando o mesmo período. Como testar essa regra? Camilo Ribeiro – camilo@camiloribeiro.com
Valores limites Inserir valores válidos  (fora dos limites) Inserir um valor exatamente igual Inserir um valor qualquer Inserir valores em cada fronteira Inserir valores dentro dos limites Inserir valores que contenham os limites Testar novamente com outro usuário Agora repedir para a operação de atualização Camilo Ribeiro – camilo@camiloribeiro.com
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” Camilo Ribeiro – camilo@camiloribeiro.com
Partição de Equivalência Qualquer veículo pode ser alugado: Veículos Ciclomotores Caminhão Carro Ônibus Helicóptero 1 de cada subconjunto Pick-up CT01 Carro CT02 Pick-up CT03 Caminhão CT04 Ônibus CT05 Motocicleta CT06 Motoneta CT07 Helicóptero Camilo Ribeiro – camilo@camiloribeiro.com Motoneta Motocicleta
Teste de Sistema Camilo Ribeiro – camilo@camiloribeiro.com Um sistema é formado por várias funcionalidades ou “casos de uso”
Teste de Sistema Camilo Ribeiro – camilo@camiloribeiro.com Cada funcionalidade do sistema possui diversos fluxos
Teste de Sistema Integra cenários de várias funcionalidades para realizar um processo de negócio! Camilo Ribeiro – camilo@camiloribeiro.com
SMQS – Seminário Mineiro de Qualidade de Software Camilo Ribeiro – camilo@camiloribeiro.com http://www.smqs2010.base2.com.br/programacao/
Dúvidas? [email_address] http://www.bugbang.com.br
Muito Obrigado!
Referências ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

Introdução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de SoftwareIntrodução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de SoftwareClaudia Melo
 
Noções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoNoções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoSandy Maciel
 
Ferramentas para testes de software
Ferramentas para testes de softwareFerramentas para testes de software
Ferramentas para testes de softwareNorton Guimarães
 
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
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de softwareRondinelli Mesquita
 
Implantação de um Processo de Teste de Software - Randerson Melville
Implantação de um Processo de Teste de Software - Randerson Melville Implantação de um Processo de Teste de Software - Randerson Melville
Implantação de um Processo de Teste de Software - Randerson Melville minastestingconference
 
Mini curso de testes ágeis
Mini curso de testes ágeisMini curso de testes ágeis
Mini curso de testes ágeisQualister
 
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
 
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
 
ALM - Testes Exploratórios
ALM - Testes ExploratóriosALM - Testes Exploratórios
ALM - Testes ExploratóriosAlan Carlos
 
Arquitetura de Automação de Teste
Arquitetura de Automação de TesteArquitetura de Automação de Teste
Arquitetura de Automação de TesteElias Nogueira
 
How To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaHow To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaEdureka!
 
X-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareX-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareAlexandreBartie
 

What's hot (20)

Introdução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de SoftwareIntrodução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de Software
 
Noções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoNoções em teste de software e introdução a automação
Noções em teste de software e introdução a automação
 
Ferramentas para testes de software
Ferramentas para testes de softwareFerramentas para testes de software
Ferramentas para testes de software
 
Teste de software
Teste de softwareTeste de software
Teste 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
 
Qualidade de software
Qualidade de softwareQualidade de software
Qualidade de software
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de software
 
Implantação de um Processo de Teste de Software - Randerson Melville
Implantação de um Processo de Teste de Software - Randerson Melville Implantação de um Processo de Teste de Software - Randerson Melville
Implantação de um Processo de Teste de Software - Randerson Melville
 
Técnicas de Teste
Técnicas de TesteTécnicas de Teste
Técnicas de Teste
 
Mini curso de testes ágeis
Mini curso de testes ágeisMini curso de testes ágeis
Mini curso de testes ágeis
 
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
 
Aula - Teste de Software
Aula - Teste de SoftwareAula - Teste de Software
Aula - Teste de Software
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
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
 
ALM - Testes Exploratórios
ALM - Testes ExploratóriosALM - Testes Exploratórios
ALM - Testes Exploratórios
 
Arquitetura de Automação de Teste
Arquitetura de Automação de TesteArquitetura de Automação de Teste
Arquitetura de Automação de Teste
 
How To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | EdurekaHow To Write A Test Case In Software Testing | Edureka
How To Write A Test Case In Software Testing | Edureka
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
Introdução ao design de teste de software
Introdução ao design de teste de softwareIntrodução ao design de teste de software
Introdução ao design de teste de software
 
X-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareX-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de Software
 

Viewers also liked

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
 
Verificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareVerificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareCamilo Almendra
 
Certificações em Teste e Qualidade de Software
Certificações em Teste e Qualidade de SoftwareCertificações em Teste e Qualidade de Software
Certificações em Teste e Qualidade de SoftwareCamilo Ribeiro
 
Integração contínua em PHP com Jenkins
Integração contínua em PHP com JenkinsIntegração contínua em PHP com Jenkins
Integração contínua em PHP com JenkinsGilmar Pupo
 
Perspectivas do profissional de qualidade e testes de software
Perspectivas do profissional de qualidade e testes de softwarePerspectivas do profissional de qualidade e testes de software
Perspectivas do profissional de qualidade e testes de softwareQualister
 
Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014alexandre freire
 
Criando pipelines de entrega contínua multilinguagem com Docker e Jenkins
Criando pipelines de entrega contínua multilinguagem com Docker e JenkinsCriando pipelines de entrega contínua multilinguagem com Docker e Jenkins
Criando pipelines de entrega contínua multilinguagem com Docker e JenkinsCamilo Ribeiro
 
Do push para a produção: Os desafios de automação em Continuous Delivery
Do push para a produção: Os desafios de automação em Continuous DeliveryDo push para a produção: Os desafios de automação em Continuous Delivery
Do push para a produção: Os desafios de automação em Continuous DeliveryCamilo Ribeiro
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesCamilo Ribeiro
 
Quando tdd não é o suficiente
Quando tdd não é o suficienteQuando tdd não é o suficiente
Quando tdd não é o suficienteCamilo Ribeiro
 
Métrica da Felicidade
Métrica da FelicidadeMétrica da Felicidade
Métrica da FelicidadeVladson Freire
 
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
 
Workshop Agile Testing Mindset
Workshop Agile Testing MindsetWorkshop Agile Testing Mindset
Workshop Agile Testing MindsetElias Nogueira
 
[GUTS-RS] Test Thinking
[GUTS-RS] Test Thinking[GUTS-RS] Test Thinking
[GUTS-RS] Test ThinkingGUTS-RS
 

Viewers also liked (20)

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
 
Ctai Teste De Software Aula 1
Ctai Teste De Software Aula 1Ctai Teste De Software Aula 1
Ctai Teste De Software Aula 1
 
Verificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareVerificação, Validação e Teste de Software
Verificação, Validação e 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
 
Certificações em Teste e Qualidade de Software
Certificações em Teste e Qualidade de SoftwareCertificações em Teste e Qualidade de Software
Certificações em Teste e Qualidade de Software
 
Integração contínua em PHP com Jenkins
Integração contínua em PHP com JenkinsIntegração contínua em PHP com Jenkins
Integração contínua em PHP com Jenkins
 
Testes de Sistema
Testes de SistemaTestes de Sistema
Testes de Sistema
 
Perspectivas do profissional de qualidade e testes de software
Perspectivas do profissional de qualidade e testes de softwarePerspectivas do profissional de qualidade e testes de software
Perspectivas do profissional de qualidade e testes de software
 
Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014
 
Criando pipelines de entrega contínua multilinguagem com Docker e Jenkins
Criando pipelines de entrega contínua multilinguagem com Docker e JenkinsCriando pipelines de entrega contínua multilinguagem com Docker e Jenkins
Criando pipelines de entrega contínua multilinguagem com Docker e Jenkins
 
Do push para a produção: Os desafios de automação em Continuous Delivery
Do push para a produção: Os desafios de automação em Continuous DeliveryDo push para a produção: Os desafios de automação em Continuous Delivery
Do push para a produção: Os desafios de automação em Continuous Delivery
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por Testes
 
Quando tdd não é o suficiente
Quando tdd não é o suficienteQuando tdd não é o suficiente
Quando tdd não é o suficiente
 
Métrica da Felicidade
Métrica da FelicidadeMétrica da Felicidade
Métrica da Felicidade
 
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...
 
Workshop Agile Testing Mindset
Workshop Agile Testing MindsetWorkshop Agile Testing Mindset
Workshop Agile Testing Mindset
 
Teste de Software - Introdução
Teste de Software - IntroduçãoTeste de Software - Introdução
Teste de Software - Introdução
 
Testes generativos
Testes generativosTestes generativos
Testes generativos
 
Tdd na veia
Tdd na veiaTdd na veia
Tdd na veia
 
[GUTS-RS] Test Thinking
[GUTS-RS] Test Thinking[GUTS-RS] Test Thinking
[GUTS-RS] Test Thinking
 

Similar to Teste de Software Introdução à Qualidade

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
 
Automacao de testes mitos e verdades
Automacao de testes mitos e verdadesAutomacao de testes mitos e verdades
Automacao de testes mitos e verdadesCristiano Caetano
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de SoftwareQualister
 
Palestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreiraPalestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreiraTaís Dall'Oca
 
Cenartec 2014 - Teste de software, uma área, uma carreira, um novo perfil
Cenartec 2014 - Teste de software, uma área, uma carreira, um novo perfilCenartec 2014 - Teste de software, uma área, uma carreira, um novo perfil
Cenartec 2014 - Teste de software, uma área, uma carreira, um novo perfilJoão Clineu - CTFL, CSM, CSD
 
Qualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberQualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberKamilla Queiroz Xavier
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaGuilherme Cardoso
 
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
 
Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...
Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...
Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...Luiz Ladeira
 
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...Júlio de Lima
 
Automação de testes: Teoria e Prática (SENAI) - Qualister
Automação de testes: Teoria e Prática (SENAI) - QualisterAutomação de testes: Teoria e Prática (SENAI) - Qualister
Automação de testes: Teoria e Prática (SENAI) - QualisterCristiano Caetano
 
3. apresentacao rp tec com 2018 gustavo bernardes
3. apresentacao rp tec com 2018 gustavo bernardes3. apresentacao rp tec com 2018 gustavo bernardes
3. apresentacao rp tec com 2018 gustavo bernardesMatheus de Lara Calache
 
Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)Vanilton Pinheiro
 

Similar to Teste de Software Introdução à Qualidade (20)

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
 
Automacao de testes mitos e verdades
Automacao de testes mitos e verdadesAutomacao de testes mitos e verdades
Automacao de testes mitos e verdades
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de Software
 
Palestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreiraPalestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreira
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
Dba Testes Gerentes B2
Dba Testes Gerentes B2Dba Testes Gerentes B2
Dba Testes Gerentes B2
 
Cenartec 2014 - Teste de software, uma área, uma carreira, um novo perfil
Cenartec 2014 - Teste de software, uma área, uma carreira, um novo perfilCenartec 2014 - Teste de software, uma área, uma carreira, um novo perfil
Cenartec 2014 - Teste de software, uma área, uma carreira, um novo perfil
 
Testes Funcionais
Testes FuncionaisTestes Funcionais
Testes Funcionais
 
Qualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberQualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saber
 
Qualidade e Teste de Software
Qualidade e Teste de SoftwareQualidade e Teste de Software
Qualidade e Teste de Software
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-ponta
 
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
 
Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...
Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...
Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE D...
 
AppTesting
AppTestingAppTesting
AppTesting
 
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
Faculdade Pitagoras 2014: Palestra sobre Fundamentos e Carreira em Teste de S...
 
Automação de testes: Teoria e Prática (SENAI) - Qualister
Automação de testes: Teoria e Prática (SENAI) - QualisterAutomação de testes: Teoria e Prática (SENAI) - Qualister
Automação de testes: Teoria e Prática (SENAI) - Qualister
 
3. apresentacao rp tec com 2018 gustavo bernardes
3. apresentacao rp tec com 2018 gustavo bernardes3. apresentacao rp tec com 2018 gustavo bernardes
3. apresentacao rp tec com 2018 gustavo bernardes
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)
 

Recently uploaded

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 

Recently uploaded (6)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

Teste de Software Introdução à Qualidade

  • 1. Teste de Software: Introdução à Qualidade Camilo Ribeiro Esp. SE, ISTQB, CBTS
  • 2. Consultor em arquitetura de testes e processos pela Caresoft Tecnologia ; Líder de Qualidade e Processos pela Alltcom Sistemas ; Palestrante em universidades como PUC Minas , UNI-BH e UNA . Mais de quatro anos atuando em Teste de Software e Processos; Participação em mais de 40 projetos de Software; Participação em projetos de implantação do CMMi (todos os níveis); Graduado em Sistemas para Internet pela Faculdade Pitágoras ; Pós graduado em Engenharia de Software pela UFMG ; Aluno da pós-graduação e pesquisa em Ciência da Computação na UFMG ; Certificado como especialista em Teste de Software pelo ISTQB e ALATS ; Membro do comitê de inovação em Teste de Software ALATS ; Mantedor do blog técnico www.bugbang.com.br ; Especialista em implementação e customização da ferramenta TestLink .
  • 3. Agenda Camilo Ribeiro – camilo@camiloribeiro.com Breve introdução sobre qualidade e teste de software Mercado de trabalho e papéis Verificação, validação e QA Mitos sobre teste de software Introdução ao pensamento de testador Derivando casos de teste de casos de uso Técnicas de teste
  • 4. O que é Qualidade? Qualidade  é um conceito subjetivo que está relacionado diretamente às percepções de cada indivíduo. Diversos fatores como cultura, modelos mentais, tipo de produto ou serviço prestado, necessidades e expectativas influenciam diretamente nesta definição. Camilo Ribeiro – camilo@camiloribeiro.com
  • 5. O que é teste de software? • Testar é o processo de executar um programa ou sistema com a intenção de encontrar defeitos (teste negativo) (Myers, 1979) • Testar é qualquer atividade que, a partir da avaliação de um atributo ou capacidade, permita determinar se o programa ou sistema obtém os resultados desejados (Hetzel, 1988) • Testar é verificar se o software está fazendo o que deveria fazer, de acordo com seus requisitos, e se não está fazendo o que não deveria fazer (Rios, Cristalli, Moreira e Souza, 2003) Camilo Ribeiro – camilo@camiloribeiro.com
  • 6. O que é teste de software? Processo que consiste em todas as atividades do ciclo de vida, tanto estáticas quanto dinâmicas, voltadas para o planejamento, preparação e avaliação de produtos de software e produtos de trabalho relacionados a fim de determinar se eles satisfazem os requisitos especificados e demonstrar que estão aptos para sua finalidade e para a detecção de defeitos. (“Testing”, Glossário ISTQB 2007) Camilo Ribeiro – camilo@camiloribeiro.com
  • 7. Perfil do profissional de teste de software  Pesquisa realizada pelo Cristiano Caetano em 2007 (pesquisa 2010 em andamento www.testexpert.com.br ) Pesquisa Completa: “ Cargos e Salários - Quanto ganha o profissional de teste e qualidade de software.pdf ” Camilo Ribeiro – camilo@camiloribeiro.com
  • 8. Papéis no Rational Unified Process (RUP) Camilo Ribeiro – camilo@camiloribeiro.com
  • 9. Papéis e Cargos Papel != Cargo O RUP usa uma analogia onde os colaboradores de um projeto trocam de “chapéus” várias vezes durante o processo de desenvolvimento de software. Se assume o papel de gerente de Configuração, não quer dizer que é um Gerente de projetos. Camilo Ribeiro – camilo@camiloribeiro.com
  • 10. Como o mercado informal classifica? Liderança Gestão de projetos Organizacional Negócios e Processos Técnica Arquitetura de Software Camilo Ribeiro – camilo@camiloribeiro.com
  • 11. Certificação profissional Certificação Brasileira de Teste de Software: Associação Latino-Americada de Teste de Software www.alats.org.br Certified Tester Foundation Level; Certified Tester Advanced Level; International Software Testing Qualifications Boarder www.bstqb.org.br Certified Associate in Software Testing (CAST) ; Certified Software Quality Analyst (CSQA) ; Certified Software Tester (CSTE): Quality Assurance Institute www.qaibrasil.com.br/ Guia Completo para Certificações em Qualidade e Teste de Software - Versão 2008 Camilo Ribeiro – camilo@camiloribeiro.com
  • 12.
  • 13. Verificação, validação e QA Camilo Ribeiro – camilo@camiloribeiro.com Se a sua pergunta é... então você está falando de: Segui o processo? QA – Garantia de qualidade Fiz a coisa corretamente? Verificação Fiz a coisa certa? Validação
  • 14. Quality Assurance (Garantia de Qualidade) “ Garantir que o processo seja seguido adequadamente e que seus produtos de trabalho sejam elaborados nos momentos adequados.” - CMMi for Development 1.2 Ligado ao processo da organização Camilo Ribeiro – camilo@camiloribeiro.com
  • 15. Verificação “ O propósito da verificação é demonstrar que o produto ou seus produtos de trabalho atendem aos seus requisitos específicos.” - CMMi for Development 1.2 Ligado a Sintaxe, o como . . . Camilo Ribeiro – camilo@camiloribeiro.com
  • 16. Validação “ O objetivo da validação é demonstrar que um componente do produto cumpre o seu uso pretendido quando colocado em seu ambiente pretendido.” - CMMi for Development 1.2 Semântica, o que . . . Camilo Ribeiro – camilo@camiloribeiro.com
  • 17.
  • 18. Transparência do teste Requisitos / Negócios (Abstração) Teste de caixa branca Teste baseado na análise da estrutura interna de um componente ou sistema. (Glossário ISTQB) Teste de caixa preta Teste, funcional ou não funcional, sem referência à estrutura interna do componente ou do sistema. (Glossário ISTQB) Camilo Ribeiro – camilo@camiloribeiro.com
  • 19. Níveis, técnicas e tipos de teste Camilo Ribeiro – camilo@camiloribeiro.com Técnicas de Teste Nível de Teste Dimensões da Qualidade segundo o RUP Funcionalidade Confiabilidade Usabilidade Desempenho Suportabilidade Alguns tipos de Teste Caixa Branca Teste de Unidade Teste de Integração Segurança Integridade Carga Configuração Caixa Cinza Teste de Sistema Funcional Regressão Usabilidade Caixa Preta Teste de Aceitação Volume Maturidade Estresse Instalação Como Testar Quando Testar O que Testar
  • 20. O que posso usar para criar testes? Requisitos Estórias de Usuário Dados Casos de uso Diagramas da UML Bugs Experiência Código Fonte Checklist Camilo Ribeiro – camilo@camiloribeiro.com Software fechado
  • 21.
  • 22. O que testar em um copo? Camilo Ribeiro – camilo@camiloribeiro.com
  • 23.
  • 24. Pirâmide de dependência Camilo Ribeiro – camilo@camiloribeiro.com
  • 25. Caso de Uso Camilo Ribeiro – camilo@camiloribeiro.com
  • 26. Cenários de Teste Camilo Ribeiro – camilo@camiloribeiro.com
  • 27. Casos de teste A, B, C, D, E M, N, O, P, Q V, W, X, Y, Z Cenário 3 do Caso de Uso 27 Caso de Teste 1 Caso de Teste 2 Caso de Teste 3 Camilo Ribeiro – camilo@camiloribeiro.com
  • 28.
  • 29.
  • 30.
  • 31.
  • 32. 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. Camilo Ribeiro – camilo@camiloribeiro.com
  • 33. Valores limites Todos veículos fabricados entre 15/01/2009 e 20/04/2009 são chamados para recall: Todos veículos com chassi maior ou igual a WAUZZZ44ZGN082819 e menor que WAUZZZ44ZGN095821 são chamados para recall: CT0N CT0N CT0N CT0N CT0N CT0N 14/01/2009 – false 15/01/2009 – false 16/01/2009 – true 19/04/2009 – true 20/04/2009 – false 21/04/2009 – false WAUZZZ44ZGN082818 – false WAUZZZ44ZGN082819 – true WAUZZZ44ZGN082820 – true WAUZZZ44ZGN095820 – true WAUZZZ44ZGN095821 – false WAUZZZ44ZGN095822 – false CT0N CT0N CT0N CT0N CT0N CT0N Camilo Ribeiro – camilo@camiloribeiro.com
  • 34. Valores limites Imagine um sistema onde cada usuário pode publicar alguns avisos para serem exibidos na intranet, um telão ou em um outro dispositivo qualquer. Logado, o usuário informa qual o aviso, e qual o periodo que o aviso deve ser exibido. Ele pode cadastrar quantos avisos desejar, mas, no caso de uso de cadastro de avisos, existe uma regra: R001 - Um usuário não pode cadastrar dois avisos ocupando o mesmo período. Como testar essa regra? Camilo Ribeiro – camilo@camiloribeiro.com
  • 35. Valores limites Inserir valores válidos (fora dos limites) Inserir um valor exatamente igual Inserir um valor qualquer Inserir valores em cada fronteira Inserir valores dentro dos limites Inserir valores que contenham os limites Testar novamente com outro usuário Agora repedir para a operação de atualização Camilo Ribeiro – camilo@camiloribeiro.com
  • 36. 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” Camilo Ribeiro – camilo@camiloribeiro.com
  • 37. Partição de Equivalência Qualquer veículo pode ser alugado: Veículos Ciclomotores Caminhão Carro Ônibus Helicóptero 1 de cada subconjunto Pick-up CT01 Carro CT02 Pick-up CT03 Caminhão CT04 Ônibus CT05 Motocicleta CT06 Motoneta CT07 Helicóptero Camilo Ribeiro – camilo@camiloribeiro.com Motoneta Motocicleta
  • 38. Teste de Sistema Camilo Ribeiro – camilo@camiloribeiro.com Um sistema é formado por várias funcionalidades ou “casos de uso”
  • 39. Teste de Sistema Camilo Ribeiro – camilo@camiloribeiro.com Cada funcionalidade do sistema possui diversos fluxos
  • 40. Teste de Sistema Integra cenários de várias funcionalidades para realizar um processo de negócio! Camilo Ribeiro – camilo@camiloribeiro.com
  • 41. SMQS – Seminário Mineiro de Qualidade de Software Camilo Ribeiro – camilo@camiloribeiro.com http://www.smqs2010.base2.com.br/programacao/
  • 44.