Este documento apresenta os fundamentos de testes de software, incluindo: (1) tipos de testes como teste de unidade, integração e caixa preta/branca; (2) princípios fundamentais de teste; (3) processo de teste envolvendo planejamento, execução e relatórios; (4) definição de cenários e casos de teste. O documento fornece uma introdução abrangente aos conceitos e práticas-chave de teste de software.
O documento apresenta um plano de treinamento sobre testes funcionais que inclui três dias de aulas. No primeiro dia serão abordados fundamentos de testes e derivação de casos de teste a partir de casos de uso. Nos dias seguintes serão apresentados recursos de uma ferramenta de teste funcional e realizados laboratórios sobre projeto de testes, criação de scripts manuais e automatizados e geração de relatórios.
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De Processocrc1404
1) A metodologia desenvolvida pelo CenPRA visa implantar ou melhorar o processo de teste de software em empresas.
2) A metodologia inclui treinamento, um processo de teste genérico e suporte para geração de documentos de teste baseados na norma IEEE 829.
3) A metodologia foi aplicada com sucesso em uma empresa de software para melhorar seu processo de teste.
Introdução a Testes de Software - Unidade IJoão Lourenço
1) O documento apresenta um curso sobre testes automatizados de software, incluindo objetivos, metodologia, conteúdo e conceitos básicos de teste de software.
2) Serão abordados testes unitários, testes de integração, testes funcionais e testes de carga, além de técnicas como TestNG e Mockito.
3) O curso visa demonstrar tecnologias e boas práticas para a construção de testes automatizados, facilitando o desenvolvimento e melhoria dos processos de teste.
Introdução ao Teste de Software - Uma abordagem práticaFabrício Campos
Este documento apresenta uma introdução ao teste de software, abordando os principais conceitos e atividades envolvidas no processo de teste de software, como planejamento, execução e avaliação dos resultados.
Noções em teste de software e introdução a automaçãoSandy Maciel
O documento apresenta conceitos básicos de teste de software, incluindo princípios, papéis, ciclo de vida de desenvolvimento e tipos de testes. Também fornece uma introdução ao Selenium WebDriver, abordando automação de testes e preparação do ambiente.
O documento discute a carreira em teste de software, apresentando diferentes papéis como testador, analista de teste e liderança. Também aborda conceitos como engenharia de software, Rational Unified Process e mitos sobre testadores. Por fim, lista certificações e bibliografia sobre o tema.
O documento apresenta um plano de treinamento sobre testes funcionais que inclui três dias de aulas. No primeiro dia serão abordados fundamentos de testes e derivação de casos de teste a partir de casos de uso. Nos dias seguintes serão apresentados recursos de uma ferramenta de teste funcional e realizados laboratórios sobre projeto de testes, criação de scripts manuais e automatizados e geração de relatórios.
Uma Metodologia Para Teste De Software No Contexto Da Melhoria De Processocrc1404
1) A metodologia desenvolvida pelo CenPRA visa implantar ou melhorar o processo de teste de software em empresas.
2) A metodologia inclui treinamento, um processo de teste genérico e suporte para geração de documentos de teste baseados na norma IEEE 829.
3) A metodologia foi aplicada com sucesso em uma empresa de software para melhorar seu processo de teste.
Introdução a Testes de Software - Unidade IJoão Lourenço
1) O documento apresenta um curso sobre testes automatizados de software, incluindo objetivos, metodologia, conteúdo e conceitos básicos de teste de software.
2) Serão abordados testes unitários, testes de integração, testes funcionais e testes de carga, além de técnicas como TestNG e Mockito.
3) O curso visa demonstrar tecnologias e boas práticas para a construção de testes automatizados, facilitando o desenvolvimento e melhoria dos processos de teste.
Introdução ao Teste de Software - Uma abordagem práticaFabrício Campos
Este documento apresenta uma introdução ao teste de software, abordando os principais conceitos e atividades envolvidas no processo de teste de software, como planejamento, execução e avaliação dos resultados.
Noções em teste de software e introdução a automaçãoSandy Maciel
O documento apresenta conceitos básicos de teste de software, incluindo princípios, papéis, ciclo de vida de desenvolvimento e tipos de testes. Também fornece uma introdução ao Selenium WebDriver, abordando automação de testes e preparação do ambiente.
O documento discute a carreira em teste de software, apresentando diferentes papéis como testador, analista de teste e liderança. Também aborda conceitos como engenharia de software, Rational Unified Process e mitos sobre testadores. Por fim, lista certificações e bibliografia sobre o tema.
O documento apresenta uma palestra sobre verificação, validação e testes de software. A agenda inclui conceitos básicos, o negócio da V&V, modelo em V, planejamento, revisão técnica e tipos de testes. O palestrante tem experiência em processos CMMi e liderança de projetos de software embarcado.
Este documento apresenta o plano de teste para um projeto de locação de filmes. Ele descreve as pessoas envolvidas no teste, os tipos de teste que serão e não serão executados, o formato dos testes, critérios para iniciar e encerrar ciclos de teste e itens a serem testados nas diferentes etapas.
O documento discute validação e testes de software, abordando tópicos como:
1) Os diferentes níveis de teste (unidade, integração, sistema e aceitação);
2) As abordagens de teste (caixa preta e caixa branca);
3) Os principais papéis no processo de teste (gerente de teste, líder de projeto de teste, etc);
4) A importância da documentação no planejamento e execução dos testes.
Este documento apresenta conceitos básicos sobre validação de software. Ele discute tópicos como defeitos e falhas, verificação versus validação, garantia da qualidade de software e testes de software. O documento também fornece detalhes sobre organização para realização de testes, técnicas de teste e processos de teste.
O documento discute os conceitos e técnicas de teste de software, com o objetivo de encontrar falhas e melhorar a qualidade do produto. Aborda temas como definição de teste de software, tipos de testes (caixa preta, caixa branca, caixa cinza), categorias de testes (unidade, integração, sistema), equipes de teste e por que testamos software.
O documento apresenta uma introdução sobre qualidade e teste de software, abordando:
1) Definições de qualidade, teste de software, verificação e validação;
2) Papéis e perfis dos profissionais de teste;
3) Técnicas para derivar casos de teste a partir de casos de uso.
Introdução a Automação de Teste de SoftwareCamilo Ribeiro
Camilo Falcão Ribeiro é um analista e arquiteto de teste com mais de quatro anos de experiência em testes de software e processos. Ele participou de mais de 40 projetos de software e projetos de implantação do CMMi em todos os níveis. Ribeiro é graduado em Sistemas para Internet e pós-graduando em Engenharia de Software.
O documento apresenta uma introdução ao teste de software, discutindo sua história, objetivos, processos, técnicas e ferramentas. Inclui tópicos como planejamento, projeto, execução e entrega de testes, níveis de teste, técnicas como caixa preta e branca e critérios como análise de valor limite e tabela de decisão. Por fim, fornece referências sobre o tema.
1. O documento discute testes de software, incluindo testes unitários, de integração, de transição de estado, de valor limite e de caminho.
2. É apresentado o framework JUnit para testes unitários e o conceito de TDD (Desenvolvimento Dirigido por Testes).
3. São discutidos testes de aceitação, incluindo seus objetivos, como escrevê-los e a ferramenta Selenium para automação de testes.
O documento introduz conceitos básicos sobre teste de software, incluindo: 1) Teste de software é o processo de execução de um produto para determinar se atendeu suas especificações; 2) Existem diferentes níveis de teste como unidade, integração e sistema; 3) Critérios de teste como particionamento de classes de equivalência e análise de valor limite são usados para gerar casos de teste.
O documento discute problemas comuns com testes de software e propõe uma metodologia para planejamento de testes. Apresenta problemas como falta de importância aos testes, recursos insuficientes e ausência de padronização. Propõe tratar os testes como um subprojeto com planejamento, métricas e integração ao desenvolvimento. A metodologia inclui análise de riscos, objetivos de teste, casos de teste, execução de diferentes tipos de teste e relatórios.
Trabalho realizado pelo aluno Rafael Sanches sobre teste de software explicando os passos necessários para realização de testes no desenvolvimento de software.
Um desafio prático dos testes de unidade é a dependência entre unidades. Quando uma unidade depende de outras, é necessário desenvolver stubs (unidades substitutas) para as unidades dependentes para que a unidade sob teste possa ser testada isoladamente. Isso requer esforço adicional de desenvolvimento que pode atrasar o processo de teste. Além disso, bugs nos stubs podem mascarar ou simular bugs na unidade real, comprometendo a efetividade dos testes. Gerenciar as dependências entre unidades para permitir testes isolados é um desafio na prática dos testes de
Tecnicas Para Planejamento E Execucao De Testes De Softwaremarthahuback
O documento discute técnicas para mapeamento de cenários de teste e técnicas de teste de caixa preta e caixa branca. Ele explica como mapear cenários de teste com foco no negócio e nos usuários, e como cenários de teste devem ser objetivos, reduzir incertezas e encontrar erros. Também descreve técnicas de teste de caixa preta como análise de valor limite, particionamento por equivalência e transição de estados, e técnicas de caixa branca como teste unitário e TDD.
Um plano de testes documenta a estratégia para verificar se um produto ou sistema atende aos requisitos. Normalmente preparado por engenheiros de teste, um plano de testes deve incluir detalhes como itens a serem testados, critérios de aprovação, cronograma e responsabilidades.
O documento apresenta uma introdução ao teste de software, abordando conceitos como defeitos, erros e falhas. Explica que o objetivo do teste é revelar a presença de erros no programa, discute técnicas como teste de unidade, integração e sistema, e critérios como particionamento em classes de equivalência e análise de valor-limite. Também menciona a importância da automatização dos testes e ferramentas para apoiar a aplicação dos critérios.
Verificação visa assegurar que o software seja desenvolvido de um modo apropriado e consistente. Validação visa assegurar que o software corresponda aos requisitos estabelecidos. Teste visa examinar o comportamento do software através de sua execução.
O documento discute os benefícios e limitações do teste de software, incluindo como o teste pode reduzir custos e aumentar a qualidade se bem planejado. Também aborda conceitos como objetivos de teste, verificação e validação, projeto de casos de teste e análise de cobertura.
O documento apresenta os conceitos e técnicas fundamentais de teste de software, descrevendo os objetivos do teste, os principais papéis e responsabilidades na equipe de teste, assim como os estágios e ciclo de vida dos testes.
O documento discute o que é teste de software, por que é necessário testar e os principais princípios e processos de teste de software. Explica que teste de software envolve executar um programa para descobrir erros, que testar é necessário para evitar prejuízos financeiros e de reputação causados por falhas, e que os humanos sempre cometem erros, justificando a necessidade de testes.
O documento apresenta uma palestra sobre verificação, validação e testes de software. A agenda inclui conceitos básicos, o negócio da V&V, modelo em V, planejamento, revisão técnica e tipos de testes. O palestrante tem experiência em processos CMMi e liderança de projetos de software embarcado.
Este documento apresenta o plano de teste para um projeto de locação de filmes. Ele descreve as pessoas envolvidas no teste, os tipos de teste que serão e não serão executados, o formato dos testes, critérios para iniciar e encerrar ciclos de teste e itens a serem testados nas diferentes etapas.
O documento discute validação e testes de software, abordando tópicos como:
1) Os diferentes níveis de teste (unidade, integração, sistema e aceitação);
2) As abordagens de teste (caixa preta e caixa branca);
3) Os principais papéis no processo de teste (gerente de teste, líder de projeto de teste, etc);
4) A importância da documentação no planejamento e execução dos testes.
Este documento apresenta conceitos básicos sobre validação de software. Ele discute tópicos como defeitos e falhas, verificação versus validação, garantia da qualidade de software e testes de software. O documento também fornece detalhes sobre organização para realização de testes, técnicas de teste e processos de teste.
O documento discute os conceitos e técnicas de teste de software, com o objetivo de encontrar falhas e melhorar a qualidade do produto. Aborda temas como definição de teste de software, tipos de testes (caixa preta, caixa branca, caixa cinza), categorias de testes (unidade, integração, sistema), equipes de teste e por que testamos software.
O documento apresenta uma introdução sobre qualidade e teste de software, abordando:
1) Definições de qualidade, teste de software, verificação e validação;
2) Papéis e perfis dos profissionais de teste;
3) Técnicas para derivar casos de teste a partir de casos de uso.
Introdução a Automação de Teste de SoftwareCamilo Ribeiro
Camilo Falcão Ribeiro é um analista e arquiteto de teste com mais de quatro anos de experiência em testes de software e processos. Ele participou de mais de 40 projetos de software e projetos de implantação do CMMi em todos os níveis. Ribeiro é graduado em Sistemas para Internet e pós-graduando em Engenharia de Software.
O documento apresenta uma introdução ao teste de software, discutindo sua história, objetivos, processos, técnicas e ferramentas. Inclui tópicos como planejamento, projeto, execução e entrega de testes, níveis de teste, técnicas como caixa preta e branca e critérios como análise de valor limite e tabela de decisão. Por fim, fornece referências sobre o tema.
1. O documento discute testes de software, incluindo testes unitários, de integração, de transição de estado, de valor limite e de caminho.
2. É apresentado o framework JUnit para testes unitários e o conceito de TDD (Desenvolvimento Dirigido por Testes).
3. São discutidos testes de aceitação, incluindo seus objetivos, como escrevê-los e a ferramenta Selenium para automação de testes.
O documento introduz conceitos básicos sobre teste de software, incluindo: 1) Teste de software é o processo de execução de um produto para determinar se atendeu suas especificações; 2) Existem diferentes níveis de teste como unidade, integração e sistema; 3) Critérios de teste como particionamento de classes de equivalência e análise de valor limite são usados para gerar casos de teste.
O documento discute problemas comuns com testes de software e propõe uma metodologia para planejamento de testes. Apresenta problemas como falta de importância aos testes, recursos insuficientes e ausência de padronização. Propõe tratar os testes como um subprojeto com planejamento, métricas e integração ao desenvolvimento. A metodologia inclui análise de riscos, objetivos de teste, casos de teste, execução de diferentes tipos de teste e relatórios.
Trabalho realizado pelo aluno Rafael Sanches sobre teste de software explicando os passos necessários para realização de testes no desenvolvimento de software.
Um desafio prático dos testes de unidade é a dependência entre unidades. Quando uma unidade depende de outras, é necessário desenvolver stubs (unidades substitutas) para as unidades dependentes para que a unidade sob teste possa ser testada isoladamente. Isso requer esforço adicional de desenvolvimento que pode atrasar o processo de teste. Além disso, bugs nos stubs podem mascarar ou simular bugs na unidade real, comprometendo a efetividade dos testes. Gerenciar as dependências entre unidades para permitir testes isolados é um desafio na prática dos testes de
Tecnicas Para Planejamento E Execucao De Testes De Softwaremarthahuback
O documento discute técnicas para mapeamento de cenários de teste e técnicas de teste de caixa preta e caixa branca. Ele explica como mapear cenários de teste com foco no negócio e nos usuários, e como cenários de teste devem ser objetivos, reduzir incertezas e encontrar erros. Também descreve técnicas de teste de caixa preta como análise de valor limite, particionamento por equivalência e transição de estados, e técnicas de caixa branca como teste unitário e TDD.
Um plano de testes documenta a estratégia para verificar se um produto ou sistema atende aos requisitos. Normalmente preparado por engenheiros de teste, um plano de testes deve incluir detalhes como itens a serem testados, critérios de aprovação, cronograma e responsabilidades.
O documento apresenta uma introdução ao teste de software, abordando conceitos como defeitos, erros e falhas. Explica que o objetivo do teste é revelar a presença de erros no programa, discute técnicas como teste de unidade, integração e sistema, e critérios como particionamento em classes de equivalência e análise de valor-limite. Também menciona a importância da automatização dos testes e ferramentas para apoiar a aplicação dos critérios.
Verificação visa assegurar que o software seja desenvolvido de um modo apropriado e consistente. Validação visa assegurar que o software corresponda aos requisitos estabelecidos. Teste visa examinar o comportamento do software através de sua execução.
O documento discute os benefícios e limitações do teste de software, incluindo como o teste pode reduzir custos e aumentar a qualidade se bem planejado. Também aborda conceitos como objetivos de teste, verificação e validação, projeto de casos de teste e análise de cobertura.
O documento apresenta os conceitos e técnicas fundamentais de teste de software, descrevendo os objetivos do teste, os principais papéis e responsabilidades na equipe de teste, assim como os estágios e ciclo de vida dos testes.
O documento discute o que é teste de software, por que é necessário testar e os principais princípios e processos de teste de software. Explica que teste de software envolve executar um programa para descobrir erros, que testar é necessário para evitar prejuízos financeiros e de reputação causados por falhas, e que os humanos sempre cometem erros, justificando a necessidade de testes.
O documento resume os principais pontos sobre teste de software segundo o guia SWEBOK. Aborda os fundamentos, níveis, objetivos, técnicas, medidas e processo de teste de software. Apresenta definições de termos como falha, defeito e erro e discute questões como testabilidade, limitações de teste e objetivos como teste de aceitação e regressão.
Gerenciamento da Qualidade de Software 4.pptxRoberto Nunes
1) O documento discute os conceitos e técnicas de teste de software, incluindo os objetivos dos testes, diferentes tipos de testes e estratégias de teste.
2) São descritos os conceitos de defeito, erro e falha, além das diferenças entre teste e depuração.
3) São apresentadas as etapas de um processo de teste, incluindo teste de unidade, integração, validação e sistema.
Introdução à Engenharia de Testes de SoftwareCloves da Rocha
O documento discute engenharia de testes de software, incluindo: (1) a definição de teste de software como um processo para revelar falhas e melhorar a qualidade do produto final; (2) as principais atividades dos profissionais de teste; e (3) os principais tipos de testes manuais versus automatizados e ferramentas de automação.
O documento discute os conceitos e práticas fundamentais de teste de software, incluindo por que é importante testar software, como deve ser feito, e os diferentes tipos de testes como teste de unidade, integração, sistema e aceitação. Ele também define termos-chave como defeito, erro e falha e discute critérios para gerar, adequar e medir a cobertura de casos de teste.
O documento discute planos de teste de software, incluindo porque são importantes, o que deve ser testado, casos de uso e requisitos, métricas e estatísticas de teste.
O documento apresenta os principais conceitos e atividades relacionadas ao processo de teste de software, incluindo a motivação para testes, formação de equipes de teste, estágios de teste, tipos de teste, planejamento e execução de testes e ferramentas de teste.
O documento discute os processos e técnicas de teste de software, abordando tópicos como ciclo de vida de testes, métodos de teste, métricas e tecnologias. Ele destaca a importância da adoção de processos de qualidade para melhorar o desenvolvimento de software, reduzir custos e riscos.
O documento resume uma palestra sobre engenharia de testes de software. O palestrante Helton Paz irá falar sobre os principais tipos de testes, testes manuais versus automatizados e ferramentas de automação. O evento será no dia 8 de maio às 19h em link online.
Verificação e validação (V&V) são processos para melhorar a qualidade de software e produtividade. V&V permite identificar problemas cedo e corrigi-los antes da entrega, aumentando a produtividade. Técnicas estáticas como revisões e inspeções verificam a qualidade antes dos testes dinâmicos. Testes de software como caixa branca e preta são importantes para validar que o software atende aos requisitos.
O documento discute os princípios e práticas de garantia de qualidade de software, incluindo a definição de qualidade, as atividades de garantia de qualidade de software, e por que a prevenção de erros é importante. Também descreve o processo de teste de software, incluindo planejamento, análise, execução e avaliação. Finalmente, apresenta sete princípios-chave de teste de software.
Apresentação sobre alguns conceitos iniciais de teste de software.
Fala sobre tipos de teste, agile testing, papéis envolvidos, cultura de testes.
Apresentação feita em conjunto por Roberto Espinha e Anelise Bastos.
Este documento apresenta os conceitos e processos de teste de software, incluindo as fases de teste de componente, integração e sistema. O objetivo dos testes é verificar aspectos estruturais, lógicos e sistêmicos do software para descobrir defeitos de forma eficiente. O processo de teste deve ser realizado em fases por equipes de desenvolvedores e testadores para garantir a qualidade do software.
Palestra Teste de Software: princípios, ferramentas e carreiraTaís Dall'Oca
1. O documento discute testes de software, incluindo princípios, ferramentas e carreiras.
2. São apresentados os motivos para testar software, como evitar defeitos e aumentar a satisfação dos clientes.
3. São descritos os níveis, tipos e técnicas de teste de software, assim como ferramentas comuns de teste e oportunidades de carreira na área.
(1) O documento apresenta um questionário sobre testes de software com 35 perguntas sobre conceitos fundamentais de teste de software. (2) As perguntas cobrem tópicos como objetivos de teste, tipos de defeitos, atividades de teste, princípios de teste, níveis de teste e teste de aceitação. (3) O questionário é baseado no Syllabus CTFL e visa auxiliar estudantes nos estudos para a certificação.
O documento discute os conceitos e objetivos do teste de software, incluindo:
1) Testar software significa verificar através de execuções controladas se o comportamento está de acordo com o especificado.
2) Os testes servem para revelar defeitos e medir a qualidade e funcionalidade de um sistema.
3) É necessário testar por diversos motivos como questões de negócio, qualidade, custos, segurança e confiabilidade.
O documento discute os conceitos e objetivos do teste de software, incluindo:
1) Testar software significa verificar através de execuções controladas se o comportamento está de acordo com o especificado.
2) Os testes servem para revelar defeitos e medir a qualidade e funcionalidade de um sistema.
3) É necessário testar por diversos motivos como questões de negócio, qualidade, custos, segurança e confiabilidade.
O documento discute processos de verificação e validação (V&V) para software, incluindo inspeções de código, testes de software e abordagens como Cleanroom. Ele explica a diferença entre verificação e validação, métodos como inspeções de software e análises estáticas automatizadas, e fatores importantes para o planejamento de V&V.
Semelhante a Palestra Fundamentos de Testes - Tche linux POA (20)
2. Quem Sou Eu?
● Aline Zanin;
● Graduada em Análise e Desenvolvimento de
Sistemas - UPF 2011;
● Especialista em Qualidade de Software Unisinos 2013;
● Mestranda PUCRS - Ciência da Computação
● Pesquisadora - Centro de Pesquisa em
Engenharia de Sistemas PUCRS -DELL
4. Oque são testes?
Teste é o processo de executar um programa
com o objetivo de verificar sua conformidade
em relação aos requisitos
especificados.
5. Porque Testar seu Software?
● Você voltaria a comprar um produto de um
fornecedor que em sua última compra,
entregou-lhe um produto defeituoso?
● Quando você adquire um produto o que você
espera dele?
● O software pode parar em ambiente produtivo?
● Qualidade de software, não é mais um
diferencial é um requisito.
6. Porque Testar Seu Software?
● De acordo com estatísticas um cliente
insatisfeito comenta com outras cinco pessoas
no mínimo que está insatisfeito enquanto um
cliente satisfeito elogia a apenas uma pessoa.
● O desenvolvedor, é o responsável pela criação
do software sendo assim se realizar testes irá
seguir o “caminho feliz”
7. Porque Testar Seu Software?
● Quando cliente se depara com uma falha
em seu sistema ocorre uma quebra de
confiança.
● Uma falha que atinge o cliente pode causar
danos financeiros milhares de vezes maior
que o custo de teste*
*Segundo o National Institute of Standards and Technology (NIST), dos EUA, os custos
diretos dos erros de software representam 0,6 % do PIB americano, o equivalente a
US$ 293 bilhões.
9. Defeito
Qualquer condição que causa um desvio de um
resultado baseado no que diz um requisito, um
documento de especificação, um documento do
usuário, um padrão, ou conforme a experiência ou
percepção do técnico, que requeira investigação.
Obs.: Defeitos podem ser encontrados em
produtos de software ou artefatos de software.
Fonte ISO 29.119
10. Erro
O Erro pode ser um resultado de um defeito ou
uma falha, como um retorno esperado, que por
causa de uma falha teve um valor diferente do que
esperado.
11. Falha
Esta mais ligada ao hardware, como uma rede
inacessível, queda de energia. Uma falha pode
ocorrer por causa de um erro, ou não.
12. Princípios Fundamentais
Princípio 1 – Teste demonstra a
presença de defeitos
O teste pode demonstrar a presença de defeitos,
mas não pode provar que eles não existem. O
Teste reduz a probabilidade que os defeitos
permaneçam em um software, mas mesmo se
nenhum defeito for encontrado, não prova que ele
esteja perfeito.
13. Princípios Fundamentais
Princípio 2 – Teste exaustivo é impossível
Testar tudo (todas as combinações de
entradas e pré-condições) não é viável, exceto
para casos triviais. Em vez do teste exaustivo,
riscos e prioridades são levados em
consideração para dar foco aos esforços de
teste.
14. Princípios Fundamentais
Princípio 4 – Agrupamento de defeitos
Um número pequeno de módulos contém a
maioria dos defeitos descobertos durante o
teste antes de sua entrega ou exibe a maioria
das falhas operacionais.
15. Princípios Fundamentais
Princípio 5 – Paradoxo do Pesticida
Pode ocorrer de um mesmo conjunto de testes
que são repetidos várias vezes não
encontrarem novos defeitos após um
determinado momento.
16. Princípios Fundamentais
Princípio 6 – Teste depende do contexto
Testes são realizados de forma
conforme o contexto. Por exemplo,
de
segurança
crítica
são
diferentemente de um software de
eletrônico.
diferente
softwares
testados
comércio
17. Princípios Fundamentais
Princípio 7 – A ilusão da ausência de erros
Encontrar e consertar defeitos não ajuda se o
sistema construído não atende às expectativas
e necessidades dos usuários.
18. Processo de Testes
●
●
●
●
●
Planejamento e controle;
Análise e modelagem;
Implementação e execução;
Avaliação dos critérios de saída e relatórios;
Atividades de encerramento de teste
19. Planejamento e Controle
O planejamento de teste é a atividade que
consiste em definir os objetivos e especificar as
atividades de forma a alcançá-los.
O controle do teste é a constante atividade que
consiste em comparar o progresso atual contra
o que foi planejado, reportando o status e os
desvios do plano.
20. Análise e modelagem do Teste
A análise e a modelagem de teste são atividades onde
os objetivos gerais do teste são transformados em
condições e modelos de teste.
1. Revisar a base de testes (como requisitos, nível de
integridade do software1 (nível de risco), arquitetura,
modelagem, interfaces).
2. Avaliar a testabilidade dos requisitos e do sistema.
3. Identificar e priorizar as condições ou requisitos de
testes;
21. Análise e modelagem do Teste
4. Projetar e priorizar os casos de testes de alto nível.
5.
Identificar as necessidades de dados para teste
suportando as condições e casos de teste
6.
Planejar a preparação do ambiente de teste e
identificar a infraestrutura e ferramentas necessárias.
7.
Criar uma rastreabilidade bidirecional entre os
requisitos e os casos de teste.
22. Implementação e execução de teste
Etapa onde os últimos ajustes de configuração e
ambiente são feitos e os testes são executados.
1. Criar suítes de teste a partir dos casos de teste para
uma execução de teste eficiente.
2. Verificar se o ambiente está preparado corretamente.
3. Executar os casos de teste manualmente ou
utilizando ferramentas de acordo com a sequência
planejada.
23. Implementação e execução de teste
4. Registrar os resultados da execução do teste e
anotar as características e versões do software em teste,
ferramenta de teste e testware.
5. Comparar resultados obtidos com os resultados
esperados.
6. Relatar as não conformidades localizadas;
7. Refazer os testes se necessário.
24. Avaliação do critério de saída e
relatório
Atividade onde a execução do teste é avaliada mediante
os objetivos definidos.
1. Checar os registros de teste (logs) mediante o critério
de encerramento especificado no planejamento de
teste;
2. Avaliar se são necessários testes adicionais ou se o
critério de saída especificado deve ser alterado;
3. Elaborar um relatório de teste resumido para os
interessados (stakeholders).
25. Atividades de encerramento de teste
Nesta etapa são recolhidos os materiais de
testes e armazenado todo tesware para um
uso posterior.
26. Tipos de Testes de Software.
- Caixa Branca
Feito junto ao código durante o processo de
desenvolvimento.
- Caixa Preta
Executado a nível de aplicação, sem contato com código.
27. Tipo de Testes de Software.
Teste de Unidade
Teste em um nível de componente ou classe. É o teste
cujo objetivo é um “pedaço do código”.
Teste de Integração
Garante que um ou mais componentes combinados (ou
unidades) funcionam. Podemos dizer que um teste de
integração é composto por diversos testes de unidade*1
Teste Operacional
Garante que a aplicação pode rodar muito tempo sem
falhar.
Teste Positivo-
Garante que a aplicação vai funcionar no “caminho feliz” de
negativo
sua execução e vai funcionar no seu fluxo de exceção. *2
28. Tipo de Testes de Software.
Teste Funcional
Teste de Interface
Teste de Performance
Teste de Volume
Testar as funcionalidades, requerimentos, regras de
negócio presentes na documentação. Validar as
funcionalidades descritas na documentação (pode
acontecer de a documentação estar inválida)
Verifica se a navegabilidade e os objetivos da tela
funcionam como especificados e se atendem da
melhor forma ao usuário.
Verifica se o tempo de resposta é o desejado para o
momento de utilização da aplicação.
Testar a quantidade de dados envolvidos (pode ser
pouca, normal, grande, ou além de grande).
29. Tipo de Testes de Software.
Teste de regressão
Toda vez que algo for mudado, deve ser
testada toda a aplicação novamente.
Teste de aceitação do
usuário
Testes de stress
Testes de Configuração
Testa se a solução será bem vista pelo
usuário. Ex: caso exista um botão pequeno
demais para executar uma função, isso deve
ser criticado em fase de testes. (aqui, cabem
quesitos fora da interface, também).
Testar a aplicação sem situações inesperadas.
Testar caminhos, às vezes, antes não previstos
no desenvolvimento/documentação.
Testar se a aplicação funciona corretamente
em diferentes ambientes de hardware ou de
software.
30. Tipo de Testes de Software.
Testes de Instalação
Teste de carga
Testes de Segurança
Testar se a instalação da aplicação
foi OK.
Verifica o funcionamento da
aplicação com a utilização de uma
quantidade grande de usuários
simultâneos.
Testar a segurança da aplicação das
mais diversas formas. Utilizar os
diversos papéis, perfis, permissões,
para navegar no sistema.
31. Técnicas de Testes de Software
●
●
●
●
●
●
Partição de Equivalência;
Análise do Valor Limite;
Tabela de Decisão;
Teste de transição de estados;
Teste de Caso de Uso;
Técnicas baseadas na experiência;
32. Por onde Começar
Um bom começo seria identificar os cenários
que serão testados nesta aplicação
CENÁRIO DE TESTES ???
33. Cenário de Teste
Cenário de teste descreve o que deve ser
testado amplamente. O cenário de testes é o
passo inicial para a criação do caso de teste.
Ex: 01 - Cadastro de Clientes
Este cenário tem a cobertura do cadastro de
clientes, aplicação deve permitir cadastrar
clientes entre 18 e 65 anos.
34. Definir Cenários de Teste
Descrição: O Analista de Teste com base nos requisitos
de teste ou nos casos de uso, e usando o Plano de
Teste como referência, deve definir os Cenários de
Teste e que servirão posteriormente para a elaboração
dos Procedimentos (ou Roteiro) de Teste.
Responsáveis: Analista de Teste
Participantes: Analista de Sistemas, Testador
Artefatos: Plano de Teste, Requisitos, Casos de Uso
(testáveis)
Ferramentas: Precisam ser definidas
35. ·
·
·
·
Fluxo Principal:
o P 1 – Usuário seleciona o menu “Alterar Senha”
o P 2 – O sistema gera um código aleatório
o P 3 – O sistema carrega a tela “Alteração de Senha”
o P 4 – Usuário entra com sua identificação, a senha atual, a nova
senha, a confirmação da nova senha e o valor do código aleatório (A1)
o P 5 – O usuário confirma a alteração (A2)
o P 6 – O sistema valida a senha. (E1) (E2)
o P 7 – O sistema emite a mensagem de indicação de sucesso
o P 8 – O caso de uso é finalizado
Fluxo Alternativo 1: O usuário não visualiza código aleatório
o A 1.1 – O usuário seleciona opção “Não consegui visualizar o código”
o A 1.2 – O sistema retorna ao fluxo principal (P2)
Fluxo Alternativo 2: O usuário cancela a alteração
o A 2.1 – O usuário seleciona a opção cancelar
o A 2.2 – O sistema cancela a operação
o A 2.3 – O caso de uso é finalizado
36. Fluxo de Exceção 1: Confirmação de senha nova não confere com a
mesma
o E.1.1 – O sistema identifica que a nova senha fornecida e a
confirmação da mesma, não conferem.
o E.1.2 – O sistema emite a mensagem “A confirmação da Nova Senha
não confere.”
o E.1.3 – O sistema retorna ao fluxo principal (P4) para entrada da
confirmação da senha nova do usuário.
Fluxo de Exceção 2: Campo Requerido Não Fornecido ou Inválido
o E.2.1 – Usuário não entra com campo requerido
o E.2.2 – O sistema emite a mensagem “Campo requerido ausente ou
inválido.”
o E.2.3 – O caso de uso é finalizado
38. Casos de Testes
Caso de teste é um conjunto de condições usadas para
teste de software. Ele pode ser elaborado para identificar
defeitos na estrutura interna do software, através de
situações que exercitem adequadamente todas as
estruturas utilizadas na codificação; ou ainda, garantir
que os requisitos do software que foi construído sejam
plenamente atendidos.
Fonte: Wikipedia =D
39. Casos de Teste
Positivos:
Descrevem Operações que devem ser concluidas na
aplicação.
Ex: Efetuar Login com sucesso
Negativos:
Descrevem Operações que não devem ser concluidas
na aplicação.
Ex: Efetuar Login com usuário inválido.
40. Casos de Testes
É importante que os casos de testes possuam as seguintes
informações:
Identificador: um nome único que permita a identificação
do caso de teste.
Histórico de versões: lista as versões do documento,
identificando o que foi alterado e o responsável por cada
versão.
Descrição: descreve o objetivo e o escopo do caso de
teste.
41. Casos de Testes.
Comportamento esperado: descreve o comportamento
esperado do sistema durante e após a execução do teste.
Nesta seção devem ser incluídas tanto as condições de
sucesso, quanto as de falha.
Comportamento obtido: descreve o comportamento
obtido através da execução do cenário de teste.
Histórico de execuções: descreve a data na qual o
cenário de teste foi executado, qual foi o resultado do teste
(passou ou falhou) e qual a forma de execução (automático
ou manual).
42. Conclusão
● Testes de software não garantem a ausência de
defeitos, porém, diminuiem a incidência destes
aumentando a qualidade do software.
● Diversas são as formas de organizar um processo de
testes, a organização por cenários e casos de testes
permite um mapeamento melhor da aplicação
evitando que partes importantes não sejam testadas.
● Manter os artefatos de testes atualizados é vitál para
ter um bom resultado com os testes.