SlideShare uma empresa Scribd logo
Testes de SoftwareTestes de Software
Apresentação
Wanderlei Silva do Carmo
− Wander.silva@gmail.com
− Twitter: @w3ae
− Youtube: youtube.com/w3ae

Analista e desenvolvedor de sistemas

Formado pelo Universidade Estácio de Sá – RJ

Pós-graduando em Engenharia e Arquitetura de
Software

Especialista Linux

Atuando na área desde 1999 como instrutor em
centros de treinamentos
Agenda
Definição de Teste e Depuração
Erro defeito ou falha
Verificação e Validação
Preparação para Teste
Técnicas de Teste de Software
Técnica Funcional,
Técnica estrutural e
Técnica Baseada em erro;
Critério para geração de casos de teste.
Erro:
item de informação ou estado de execução inconsistente
Defeito:
deficiência mecânica ou algorítmica que, se ativada, pode levar a uma falha
Falha:
evento notável em que o sistema viola suas especificações
Se houver erros, o software estará com defeito e poderá falhar!
Erro, Defeito e Falha
Verificação:
O software está funcionando corretamente (sem erros) ?
Validação:
O software faz o que o cliente pediu?
Verificação e Validação
Selecionar os dados de entrada
Determinar a saída esperada
Preparação para o teste
Teste:
Processo de execução de um programa com o objetivo de revelar a presença de
erros. Contribuem para aumentar a confiança de que o
Depuração:
Consequência não previsível do teste. Após revelada a presença do erro, este deve
ser encontrado e corrigido. Contribuem para aumentar a confiança de que o software
desempenha as funções especificadas.
Teste e Depuração
Técnicas de Software
Técnicas
Técnica é o processo que vai assegurar perfeito funcionamento de alguns
aspectos de software ou de sua unidade.
Segundo a norma IEEE 610.12-1990, as técnicas são procedimentos
técnicos e gerenciais que ajudam a avaliação e a melhoria do processo
Técnica Estrutural
O Teste estrutural também conhecido como teste da caixa branca, tem por
objetivo testar o código fonte, testar cada linha de código possível, testar os fluxos
básicos e os alternativos.
Classificam-se em:
Stress: Verifica como o sistema é executado com determinados volumes de dados.
Execução: Se o sistema atinge o nível desejado de eficiência;
Recuperação Contingência: Se o sistema é capaz de retornar o nível anterior
antes da falha.
Operação: Se o sistema opera conforme sua documentação
Compliance: Se o sistema foi desenvolvido conforme padrões e procedimentos.
Segurança: Se o sistema está protegido conforme normas e políticas da
organização.
Técnica Funcional
Teste funcional também conhecido como teste da caixa preta, é baseado na
analise funcional do software. Ele garante que os requisitos funcionem conforme
o especificado, ele não se preocupa na forma como ele foi implementado, são
inseridos alguns dados e espera-se na saída o resultado de como foi projetado
os requisitos.
Classificam-se em:
● Requisitos: Se o sistema é efetuado conforme suas especificações
● Regressão: Se o sistema ou alguma parte dele foi afetado por alguma
alteração.
● Tratamento de erros: Se os possíveis erros que possam acontecer tem
tratamento antes de acontecer suas falhas.
● Manual: Interação entre homem e maquina.
● Interfaces de integração: Verifica se o sistema troca informações com outros
sistemas.
● Controle: Verifica se o sistema tem algum controle de dados, validações e
integridade, logs de auditoria.
● Paralelismo: Se a versão nova ou a antiga gera os mesmos resultados.
Técnica Baseada em Erro
Os dados de teste são gerados considerando os principais defeitos mais
cometidos pelos desenvolvedores. Por exemplo, o critério Análise de Mutantes
[DEM78];
Análise de Mutantes;
Análise de Mutantes tem por finalidade introduzir pequenos defeitos em um
programa em teste através de operadores de mutação e gerar novos programas
chamados de mutantes. Ela baseia-se em dois pressupostos [DEM78]:
• Hipótese do programador competente:
os programadores fazem programas bem próximo do correto;
• Efeito de acoplamento: um defeito complexo é revelado, revelando-se defeitos
simples. Pequenas modificações são introduzidas no programa através da
aplicação de operadores de mutação (operadores que modificam alguma parte
do código) que geram novos programas chamados mutantes.
São utilizados casos de testes na execução destes mutantes para distingui-los
do programa original
Técnica Baseada em Erro
Um mutante é dito “morto” quando um caso de teste conseguir fazer a distinção
entre o programa mutante e o programa original gerando saídas diferentes. Se a
saída do programa original for considerada correta, então este estará livre do
possível defeito descrito pelo programa mutante. Caso contrário, um defeito é
descoberto e o programa deverá ser corrigido. O critério Análise de Mutantes
exige que todos os mutantes sejam mortos [DEM78].
Os casos de teste que matam os mutantes são classificados como eficientes.
Caso após a execução de todos os casos de testes, ainda existam
mutantes que gerem a mesma saída do programa original e se não for possível
gerar um caso de teste cuja saída diferencie o programa original do programa
mutante, os mutantes são considerados equivalentes ao programa original.
• Divide o domínio da entrada de um programa em classes de equivalência.
A partir das quais os casos de teste são derivados
• Minimiza o número de casos de teste de cada classe, pois em princípio
todos os elementos de uma classe devem se comportar de maneira
equivalente.
• Classe equivalente representa um conjunto de estados válidos e inválidos
para uma condição de entrada.
Critérios de teste
Particionamento de classes de equivalência
• Erros tendem a ocorrer nos limites do domínio de entrada ao invés do
centro.
• Explorar os limites dos valores de cada classe de equivalência para
preparar os casos de teste.
Critérios de teste
Análise de Valor Limite
• Verifica o efeito combinado de dados de entrada.
• As causas (condições de entrada) e os efeitos (ações) são identificados
e combinados em um grafo.
Critérios de teste
Grafo de Causa-efeito
•Esse critério é baseado em quatro passos:
•Para cada módulo de causa e efeito são relacionados, atribuindo-se um
identificador para cada um.
• O grafo de causa-efeito é elaborado.
• Transforma-se o grafo de causa-efeito numa tabela de decisão.
• As regras da tabela são convertidas em casos de teste.
Critérios de teste
Grafo de Causa-efeito
Referencias
● http://dspace.c3sl.ufpr.br:8080/dspace
● http://pt.slideshare.net/danilohabreu/engenharia-de-testes

Mais conteúdo relacionado

Mais procurados

Teste de software
Teste de softwareTeste de software
Teste de software
Rafael Sanches
 
Testes Unitários usando TestNG
Testes Unitários usando TestNGTestes Unitários usando TestNG
Testes Unitários usando TestNG
Bárbara Cabral da Conceição, CTFL
 
Workshop - Plano de Testes End to End com o Microsoft Test Manager
Workshop   - Plano de Testes End to End com o Microsoft Test ManagerWorkshop   - Plano de Testes End to End com o Microsoft Test Manager
Workshop - Plano de Testes End to End com o Microsoft Test Manager
Alan Carlos
 
Qualidade
QualidadeQualidade
Será que testar é simples?
Será que testar é simples?Será que testar é simples?
Será que testar é simples?
Paulo Luiz Fachini
 
Introdução as Técnicas de Testes e Documentação
Introdução as Técnicas de Testes e DocumentaçãoIntrodução as Técnicas de Testes e Documentação
Introdução as Técnicas de Testes e Documentação
GTS-CE
 
Engenharia de software testes
Engenharia de software  testesEngenharia de software  testes
Engenharia de software testes
Adilmar Dantas
 
Introdução a Testes de Software
Introdução a Testes de SoftwareIntrodução a Testes de Software
Introdução a Testes de Software
Igor Takenami
 
Plano de teste
Plano de testePlano de teste
Plano de teste
Eduardo Nilsen
 
Teste baseado em modelos
Teste baseado em modelosTeste baseado em modelos
Teste baseado em modelos
Andreza Pollyana
 
Teste Dirigido por Modelos
Teste Dirigido por ModelosTeste Dirigido por Modelos
Teste Dirigido por Modelos
Natã Melo
 
Teste de Aceitação: problemas, desafios e abordagens
Teste de Aceitação: problemas, desafios e abordagensTeste de Aceitação: problemas, desafios e abordagens
Teste de Aceitação: problemas, desafios e abordagens
Synergia - Engenharia de Software e Sistemas
 
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
Sandy Maciel
 
Testes, engenharia de Software, teste de Software
Testes, engenharia de Software, teste de SoftwareTestes, engenharia de Software, teste de Software
Testes, engenharia de Software, teste de Software
Silas Gonçalves
 
Introdução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade IIntrodução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade I
João Lourenço
 
Introdução a testes de sofwtare
Introdução a testes de sofwtareIntrodução a testes de sofwtare
Introdução a testes de sofwtare
Fernando Palma
 
Teste de software
Teste de softwareTeste de software
Teste de software
Claudio Eckert
 
TechNet - e-Book- Artigos sobre Test Manager
TechNet - e-Book- Artigos sobre Test ManagerTechNet - e-Book- Artigos sobre Test Manager
TechNet - e-Book- Artigos sobre Test Manager
Alan Carlos
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
Thiago Ghisi
 
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Claudinei Brito Junior
 

Mais procurados (20)

Teste de software
Teste de softwareTeste de software
Teste de software
 
Testes Unitários usando TestNG
Testes Unitários usando TestNGTestes Unitários usando TestNG
Testes Unitários usando TestNG
 
Workshop - Plano de Testes End to End com o Microsoft Test Manager
Workshop   - Plano de Testes End to End com o Microsoft Test ManagerWorkshop   - Plano de Testes End to End com o Microsoft Test Manager
Workshop - Plano de Testes End to End com o Microsoft Test Manager
 
Qualidade
QualidadeQualidade
Qualidade
 
Será que testar é simples?
Será que testar é simples?Será que testar é simples?
Será que testar é simples?
 
Introdução as Técnicas de Testes e Documentação
Introdução as Técnicas de Testes e DocumentaçãoIntrodução as Técnicas de Testes e Documentação
Introdução as Técnicas de Testes e Documentação
 
Engenharia de software testes
Engenharia de software  testesEngenharia de software  testes
Engenharia de software testes
 
Introdução a Testes de Software
Introdução a Testes de SoftwareIntrodução a Testes de Software
Introdução a Testes de Software
 
Plano de teste
Plano de testePlano de teste
Plano de teste
 
Teste baseado em modelos
Teste baseado em modelosTeste baseado em modelos
Teste baseado em modelos
 
Teste Dirigido por Modelos
Teste Dirigido por ModelosTeste Dirigido por Modelos
Teste Dirigido por Modelos
 
Teste de Aceitação: problemas, desafios e abordagens
Teste de Aceitação: problemas, desafios e abordagensTeste de Aceitação: problemas, desafios e abordagens
Teste de Aceitação: problemas, desafios e abordagens
 
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
 
Testes, engenharia de Software, teste de Software
Testes, engenharia de Software, teste de SoftwareTestes, engenharia de Software, teste de Software
Testes, engenharia de Software, teste de Software
 
Introdução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade IIntrodução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade I
 
Introdução a testes de sofwtare
Introdução a testes de sofwtareIntrodução a testes de sofwtare
Introdução a testes de sofwtare
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
TechNet - e-Book- Artigos sobre Test Manager
TechNet - e-Book- Artigos sobre Test ManagerTechNet - e-Book- Artigos sobre Test Manager
TechNet - e-Book- Artigos sobre Test Manager
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
 
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
 

Destaque

Vagrant uma ferramenta realmente útil e versátil
Vagrant   uma ferramenta realmente útil e versátilVagrant   uma ferramenta realmente útil e versátil
Vagrant uma ferramenta realmente útil e versátil
Wanderlei Silva do Carmo
 
Mini aula-java
Mini aula-javaMini aula-java
Mini aula-java
Wanderlei Silva do Carmo
 
Apresentação programação de computadores
Apresentação   programação de computadoresApresentação   programação de computadores
Apresentação programação de computadores
Wanderlei Silva do Carmo
 
Programação de computadores
Programação de computadoresProgramação de computadores
Programação de computadores
Wanderlei Silva do Carmo
 
Desenvolvimento para Windows Mobile
Desenvolvimento para Windows MobileDesenvolvimento para Windows Mobile
Desenvolvimento para Windows Mobile
Wanderlei Silva do Carmo
 
Mini aula-java
Mini aula-javaMini aula-java
Mini aula-java
Wanderlei Silva do Carmo
 
Mini aula-java
Mini aula-javaMini aula-java
Mini aula-java
Wanderlei Silva do Carmo
 
Mini aula análise de requisitos
Mini aula análise de requisitosMini aula análise de requisitos
Mini aula análise de requisitos
Wanderlei Silva do Carmo
 
Segurança de código
Segurança de códigoSegurança de código
Segurança de código
Wanderlei Silva do Carmo
 
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vbaConceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Wanderlei Silva do Carmo
 
Desenvolvimento IOS - Mobile
Desenvolvimento IOS - MobileDesenvolvimento IOS - Mobile
Desenvolvimento IOS - Mobile
Wanderlei Silva do Carmo
 

Destaque (11)

Vagrant uma ferramenta realmente útil e versátil
Vagrant   uma ferramenta realmente útil e versátilVagrant   uma ferramenta realmente útil e versátil
Vagrant uma ferramenta realmente útil e versátil
 
Mini aula-java
Mini aula-javaMini aula-java
Mini aula-java
 
Apresentação programação de computadores
Apresentação   programação de computadoresApresentação   programação de computadores
Apresentação programação de computadores
 
Programação de computadores
Programação de computadoresProgramação de computadores
Programação de computadores
 
Desenvolvimento para Windows Mobile
Desenvolvimento para Windows MobileDesenvolvimento para Windows Mobile
Desenvolvimento para Windows Mobile
 
Mini aula-java
Mini aula-javaMini aula-java
Mini aula-java
 
Mini aula-java
Mini aula-javaMini aula-java
Mini aula-java
 
Mini aula análise de requisitos
Mini aula análise de requisitosMini aula análise de requisitos
Mini aula análise de requisitos
 
Segurança de código
Segurança de códigoSegurança de código
Segurança de código
 
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vbaConceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
 
Desenvolvimento IOS - Mobile
Desenvolvimento IOS - MobileDesenvolvimento IOS - Mobile
Desenvolvimento IOS - Mobile
 

Semelhante a Mini aula de teste de software

Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdf
MichaelArrais1
 
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
Roberto Nunes
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
testedesoftwarepe
 
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
paulo peres
 
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
Joeldson Costa Damasceno
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
Wagner Zaparoli
 
Teste de Software - Introdução
Teste de Software - IntroduçãoTeste de Software - Introdução
Teste de Software - Introdução
Joeldson Costa Damasceno
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de Testes
UFPA
 
Aula09_TesteSoftware_Parte1_apremdeeghku
Aula09_TesteSoftware_Parte1_apremdeeghkuAula09_TesteSoftware_Parte1_apremdeeghku
Aula09_TesteSoftware_Parte1_apremdeeghku
MoniqueEstevo2
 
Aula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfAula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdf
HoctairBernardino
 
3 engenharia de software
3   engenharia de software3   engenharia de software
3 engenharia de software
Felipe Bugov
 
Fundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline ZaninFundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline Zanin
DevInPF
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de software
Felipe Bugov
 
Eng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes de softwareEng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes de software
Manuel Menezes de Sequeira
 
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
Camilo Ribeiro
 
Palestra Fundamentos de Testes - Tche linux POA
Palestra Fundamentos de Testes  - Tche linux POAPalestra Fundamentos de Testes  - Tche linux POA
Palestra Fundamentos de Testes - Tche linux POA
Aline Zanin
 
Visão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOKVisão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOK
Mário Pravato Junior
 
Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs
Ricardo Machado
 
Aula - Teste de Software
Aula - Teste de SoftwareAula - Teste de Software
Aula - Teste de Software
Mauricio Cesar Santos da Purificação
 
Palestra ALATS SP - FIAP Teste de Software
Palestra ALATS SP - FIAP  Teste de SoftwarePalestra ALATS SP - FIAP  Teste de Software
Palestra ALATS SP - FIAP Teste de Software
Elias Nogueira
 

Semelhante a Mini aula de teste de software (20)

Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdf
 
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
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
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
 
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 - Introdução
Teste de Software - IntroduçãoTeste de Software - Introdução
Teste de Software - Introdução
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de Testes
 
Aula09_TesteSoftware_Parte1_apremdeeghku
Aula09_TesteSoftware_Parte1_apremdeeghkuAula09_TesteSoftware_Parte1_apremdeeghku
Aula09_TesteSoftware_Parte1_apremdeeghku
 
Aula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfAula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdf
 
3 engenharia de software
3   engenharia de software3   engenharia de software
3 engenharia de software
 
Fundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline ZaninFundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline Zanin
 
4 engenharia de software
4   engenharia de software4   engenharia de software
4 engenharia de software
 
Eng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes de softwareEng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes 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
 
Palestra Fundamentos de Testes - Tche linux POA
Palestra Fundamentos de Testes  - Tche linux POAPalestra Fundamentos de Testes  - Tche linux POA
Palestra Fundamentos de Testes - Tche linux POA
 
Visão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOKVisão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOK
 
Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs Teste de Software - Bluesoft Labs
Teste de Software - Bluesoft Labs
 
Aula - Teste de Software
Aula - Teste de SoftwareAula - Teste de Software
Aula - Teste de Software
 
Palestra ALATS SP - FIAP Teste de Software
Palestra ALATS SP - FIAP  Teste de SoftwarePalestra ALATS SP - FIAP  Teste de Software
Palestra ALATS SP - FIAP Teste de Software
 

Último

Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ismael Ash
 
ExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negócios
ExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negóciosExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negócios
ExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negócios
ExpoGestão
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
ronaldos10
 
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebuliçãoExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
Ismael Ash
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
Faga1939
 

Último (6)

Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
 
ExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negócios
ExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negóciosExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negócios
ExpoGestão 2024 - Inteligência Artificial – A revolução no mundo dos negócios
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
 
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebuliçãoExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebulição
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
 

Mini aula de teste de software

  • 2. Apresentação Wanderlei Silva do Carmo − Wander.silva@gmail.com − Twitter: @w3ae − Youtube: youtube.com/w3ae  Analista e desenvolvedor de sistemas  Formado pelo Universidade Estácio de Sá – RJ  Pós-graduando em Engenharia e Arquitetura de Software  Especialista Linux  Atuando na área desde 1999 como instrutor em centros de treinamentos
  • 3. Agenda Definição de Teste e Depuração Erro defeito ou falha Verificação e Validação Preparação para Teste Técnicas de Teste de Software Técnica Funcional, Técnica estrutural e Técnica Baseada em erro; Critério para geração de casos de teste.
  • 4. Erro: item de informação ou estado de execução inconsistente Defeito: deficiência mecânica ou algorítmica que, se ativada, pode levar a uma falha Falha: evento notável em que o sistema viola suas especificações Se houver erros, o software estará com defeito e poderá falhar! Erro, Defeito e Falha
  • 5. Verificação: O software está funcionando corretamente (sem erros) ? Validação: O software faz o que o cliente pediu? Verificação e Validação
  • 6. Selecionar os dados de entrada Determinar a saída esperada Preparação para o teste
  • 7. Teste: Processo de execução de um programa com o objetivo de revelar a presença de erros. Contribuem para aumentar a confiança de que o Depuração: Consequência não previsível do teste. Após revelada a presença do erro, este deve ser encontrado e corrigido. Contribuem para aumentar a confiança de que o software desempenha as funções especificadas. Teste e Depuração
  • 8. Técnicas de Software Técnicas Técnica é o processo que vai assegurar perfeito funcionamento de alguns aspectos de software ou de sua unidade. Segundo a norma IEEE 610.12-1990, as técnicas são procedimentos técnicos e gerenciais que ajudam a avaliação e a melhoria do processo
  • 9. Técnica Estrutural O Teste estrutural também conhecido como teste da caixa branca, tem por objetivo testar o código fonte, testar cada linha de código possível, testar os fluxos básicos e os alternativos. Classificam-se em: Stress: Verifica como o sistema é executado com determinados volumes de dados. Execução: Se o sistema atinge o nível desejado de eficiência; Recuperação Contingência: Se o sistema é capaz de retornar o nível anterior antes da falha. Operação: Se o sistema opera conforme sua documentação Compliance: Se o sistema foi desenvolvido conforme padrões e procedimentos. Segurança: Se o sistema está protegido conforme normas e políticas da organização.
  • 10. Técnica Funcional Teste funcional também conhecido como teste da caixa preta, é baseado na analise funcional do software. Ele garante que os requisitos funcionem conforme o especificado, ele não se preocupa na forma como ele foi implementado, são inseridos alguns dados e espera-se na saída o resultado de como foi projetado os requisitos. Classificam-se em: ● Requisitos: Se o sistema é efetuado conforme suas especificações ● Regressão: Se o sistema ou alguma parte dele foi afetado por alguma alteração. ● Tratamento de erros: Se os possíveis erros que possam acontecer tem tratamento antes de acontecer suas falhas. ● Manual: Interação entre homem e maquina. ● Interfaces de integração: Verifica se o sistema troca informações com outros sistemas. ● Controle: Verifica se o sistema tem algum controle de dados, validações e integridade, logs de auditoria. ● Paralelismo: Se a versão nova ou a antiga gera os mesmos resultados.
  • 11. Técnica Baseada em Erro Os dados de teste são gerados considerando os principais defeitos mais cometidos pelos desenvolvedores. Por exemplo, o critério Análise de Mutantes [DEM78]; Análise de Mutantes; Análise de Mutantes tem por finalidade introduzir pequenos defeitos em um programa em teste através de operadores de mutação e gerar novos programas chamados de mutantes. Ela baseia-se em dois pressupostos [DEM78]: • Hipótese do programador competente: os programadores fazem programas bem próximo do correto; • Efeito de acoplamento: um defeito complexo é revelado, revelando-se defeitos simples. Pequenas modificações são introduzidas no programa através da aplicação de operadores de mutação (operadores que modificam alguma parte do código) que geram novos programas chamados mutantes. São utilizados casos de testes na execução destes mutantes para distingui-los do programa original
  • 12. Técnica Baseada em Erro Um mutante é dito “morto” quando um caso de teste conseguir fazer a distinção entre o programa mutante e o programa original gerando saídas diferentes. Se a saída do programa original for considerada correta, então este estará livre do possível defeito descrito pelo programa mutante. Caso contrário, um defeito é descoberto e o programa deverá ser corrigido. O critério Análise de Mutantes exige que todos os mutantes sejam mortos [DEM78]. Os casos de teste que matam os mutantes são classificados como eficientes. Caso após a execução de todos os casos de testes, ainda existam mutantes que gerem a mesma saída do programa original e se não for possível gerar um caso de teste cuja saída diferencie o programa original do programa mutante, os mutantes são considerados equivalentes ao programa original.
  • 13. • Divide o domínio da entrada de um programa em classes de equivalência. A partir das quais os casos de teste são derivados • Minimiza o número de casos de teste de cada classe, pois em princípio todos os elementos de uma classe devem se comportar de maneira equivalente. • Classe equivalente representa um conjunto de estados válidos e inválidos para uma condição de entrada. Critérios de teste Particionamento de classes de equivalência
  • 14. • Erros tendem a ocorrer nos limites do domínio de entrada ao invés do centro. • Explorar os limites dos valores de cada classe de equivalência para preparar os casos de teste. Critérios de teste Análise de Valor Limite
  • 15. • Verifica o efeito combinado de dados de entrada. • As causas (condições de entrada) e os efeitos (ações) são identificados e combinados em um grafo. Critérios de teste Grafo de Causa-efeito
  • 16. •Esse critério é baseado em quatro passos: •Para cada módulo de causa e efeito são relacionados, atribuindo-se um identificador para cada um. • O grafo de causa-efeito é elaborado. • Transforma-se o grafo de causa-efeito numa tabela de decisão. • As regras da tabela são convertidas em casos de teste. Critérios de teste Grafo de Causa-efeito