26
Fabrício Dias [email protected] http://groups.google.com.br/group/facisa-teste-de- software

Teste+de+Software+-+Aula+2.ppt

Embed Size (px)

Citation preview

Page 1: Teste+de+Software+-+Aula+2.ppt

Fabrício [email protected]

http://groups.google.com.br/group/facisa-teste-de-software

Page 2: Teste+de+Software+-+Aula+2.ppt

Introdução Relembrando...

◦ Motivação◦ Finalidade dos testes

O processo de teste Fases da atividade de teste Técnicas e critérios de testes Características e limitações Abordagem de teste Estágios de teste

21/04/23 2

Page 3: Teste+de+Software+-+Aula+2.ppt

Existe grande possibilidade de injeção de falhas humanas no processo de desenvolvimento de software

O processo de testes faz parte da garantia de qualidade de software

Os custos associados às falhas de software justificam um processo de testes cuidadoso e bem planejado.

21/04/23 3

Page 4: Teste+de+Software+-+Aula+2.ppt

Verificar se todos os requisitos do sistema foram corretamente implementados

Assegurar, na medida do possível, a qualidade e a corretude do software produzido

Reduzir custos de manutenção corretiva e retrabalho

Assegurar a satisfação do cliente com o produto desenvolvido.

21/04/23 4

Page 5: Teste+de+Software+-+Aula+2.ppt

Produzir casos de teste que têm elevada probabilidade de revelar um erro ainda não descoberto com uma quantidade mínima de tempo e esforço

Comparar o resultado dos testes com os resultados esperados a fim de produzir uma indicação da qualidade e da confiabilidade do software

Verificar a correta integração entre todos os componentes de software.

21/04/23 5

Page 6: Teste+de+Software+-+Aula+2.ppt

Tem como objetivo criar testes para revelar a presença de erros

Define como os testes serão planejados e executados através de atividades e passos e quando serão executados

21/04/23 6

Page 7: Teste+de+Software+-+Aula+2.ppt

Quando bem planejado e controlado, exige menos esforço e possui maior eficácia

É impossível provar a ausência total de erros de um software!

21/04/23 7

Page 8: Teste+de+Software+-+Aula+2.ppt

Teste de unidade Teste de integração Teste de sistemas Teste de regressão

21/04/23 8

Page 9: Teste+de+Software+-+Aula+2.ppt

Foco nas menores unidades do programa:◦ Funções;◦ Procedimentos;◦ Métodos;◦ Classes.

O teste é executado a medida que for sendo implementado, de forma isolada, pelo próprio desenvolvedor.

21/04/23 9

Page 10: Teste+de+Software+-+Aula+2.ppt

Deve ser executado após serem testadas as unidades individualmente

A ênfase é dada na construção da estrutura do sistema

Verificar se interação entre as partes do sistema funciona de maneira adequada e não leva a erros.

21/04/23 10

Page 11: Teste+de+Software+-+Aula+2.ppt

Verificar se as funcionalidades especificadas nos documentos de requisitos estão corretas

Aspectos de corretude, completude e coerência também devem ser observados;

Muitas organizações adotam a estratégia de designar uma equipe independente para realizar os testes de sistemas.

21/04/23 11

Page 12: Teste+de+Software+-+Aula+2.ppt

Realiza-se durante a manutenção do software

A cada modificação efetuada no sistema, após a sua liberação, corre-se o risco de que novos defeitos sejam introduzidos◦ Por isso, após a modificação é preciso ter certeza

de que o software não foi afetado.

21/04/23 12

Page 13: Teste+de+Software+-+Aula+2.ppt

Técnicas de teste:◦ Teste aleatório◦ Teste de subdomínio

Critérios de teste:◦ Funcionais◦ Estruturais◦ Baseados em defeitos

21/04/23 13

Page 14: Teste+de+Software+-+Aula+2.ppt

Para se garantir que um software não possui defeitos, deveríamos testar todo o seu domínio. O que é impossível!

O objetivo da atividade de teste é mostrar a presença de defeitos, caso eles existam e não mostrar que um programa está correto.

21/04/23 14

Page 15: Teste+de+Software+-+Aula+2.ppt

Abordagem “caixa preta”◦ Entrada e saída◦ Geralmente aplicado durante as últimas fases do

processo de teste

Objetivo◦ Erros na interface gráfica◦ Erros na estruturas de dados ou acesso ao banco

de dados ◦ Problemas de desempenho.

21/04/23 15

Page 16: Teste+de+Software+-+Aula+2.ppt

Abordagem “Caixa Branca”◦ Os testes são gerados a partir de uma análise dos

caminhos lógicos possíveis de serem executados, de modo a conhecer o funcionamento interno dos componentes de software

Objetivos◦ Garantir que todos os caminhos independentes

dentro de um módulo tenham sido exercitados pelo menos uma vez

◦ Executar laços dentro dos valores limites.

21/04/23 16

Page 17: Teste+de+Software+-+Aula+2.ppt

Teste de unidade◦ Componentes individuais (ex: classes, métodos)

são testados para assegurar que os mesmos operam de forma correta.

Teste de integração◦ A interface entre as unidades integradas é

testada

21/04/23 17

Page 18: Teste+de+Software+-+Aula+2.ppt

Teste de sistema◦ Os elementos de software integrados com o

ambiente operacional (hardware, pessoas, etc.) são testados como um todo

Teste de aceitação (homologação)◦ O software é testado pelo usuário final◦ Envolve treinamento, documentação e

empacotamento

21/04/23 18

Page 19: Teste+de+Software+-+Aula+2.ppt

Realizado para melhorar a qualidade do software

Reduz o custo dos defeitos encontrados Objetivo:

◦ Testar a estrutura interna (lógica e fluxo de dados) e comportamento.

21/04/23 19

Page 20: Teste+de+Software+-+Aula+2.ppt

São testados:◦ Componentes individuais (classes, métodos) para

assegurar que os mesmo operam de forma correta◦ Manipulação de dados inconsistentes ou impróprios◦ Inicialização de variáveis com valores default e

outros valores◦ Condições limite para garantir que a unidade opera

adequadamente nos limites estabelecidos para demarcarem os restringirem seu processamento

Pessoa envolvida

21/04/23 20

Page 21: Teste+de+Software+-+Aula+2.ppt

Unidades ou aplicações que foram testadas em separado são testadas de forma integrada

A interface entre as unidades integradas é testada

21/04/23 21

Page 22: Teste+de+Software+-+Aula+2.ppt

O teste de integração deve ser feito de forma incremental, ou seja, as unidades devem ser integradas em pequenos segmentos

Este teste deve ser executado por um engenheiro de testes, com a formação de programador

Pessoa envolvida:

21/04/23 22

Page 23: Teste+de+Software+-+Aula+2.ppt

Verifica se a aplicação está funcionando como um todo

A integração dos componentes de software com o ambiente operacional similar ao de produção (hardware, pessoas e outros sistemas) é testada

Geralmente é um teste “caixa-preta”, executado por um testador de sistemas (idealmente membro de um grupo independente de testes)

21/04/23 23

Page 24: Teste+de+Software+-+Aula+2.ppt

Teste de “caixa-preta”, realizados pelo usuário (cliente) a fim de demonstrar a conformidade com os requisitos do software

Envolve treinamento, documentação e empacotamento

21/04/23 24

Page 25: Teste+de+Software+-+Aula+2.ppt

Testes alfa◦ Feitos pelo usuário, geralmente nas instalações

do desenvolvedor, que observa e registra erros ou problemas

Testes beta◦ Feitos pelo usuário, geralmente em suas próprias

instalações, sem a supervisão do desenvolvedor. Os problemas detectados devem ser relatados para o desenvolvedor.

21/04/23 25

Page 26: Teste+de+Software+-+Aula+2.ppt

Dúvidas???

21/04/23 26