A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução aos conceitos de Teste de Software

Apresentações semelhantes


Apresentação em tema: "Introdução aos conceitos de Teste de Software"— Transcrição da apresentação:

1 Introdução aos conceitos de Teste de Software
Prof. Wolley W. Silva

2 Agenda Definições de Teste de software
Conceitos básicos associados a Teste de Software Níveis de teste de Software

3 Por que Testar Software?
Os Estados Unidos estimam que bugs de software lhes custam aproximadamente 60 bilhões de dólares por ano. O foguete Ariane 5 explodiu por um erro de software. Erro de software provoca a morte de 21 pacientes em tratamento de câncer.

4 Nenhum software esta livre de falhas !

5 Definições Teste de Software
É o processo de execução de um produto para determinar se ele atingiu suas especificações e funcionou corretamente no ambiente para o qual foi projetado;

6 Definições Objetivo de todo teste:
Revelar falhas em um produto, para que as causas dessas falhas sejam identificadas e possam ser corrigidas pela equipe de desenvolvimento antes da entrega final.

7 Definições de Termos Defeito: passo, processo ou definição de dados incorreto, como por exemplo, uma instrução ou comando incorreto. Erro: diferença entre o valor obtido e o valor esperado, ou seja, qualquer estado intermediário incorreto ou resultado inesperado na execução do programa constitui um erro. Falha: produção de uma saída incorreta com relação à especificação.

8 Definições de Termos

9 Testes revelam falhas ! Sistema Ie Oe Entradas que causam
comportamentos anômalos Ie Entrada de dados de teste Sistema Saídas que revelam falhas Saída de resultado de teste Oe Figura adaptada de Sommerville, Ian

10 Verificação e Validação (V&V)
O Teste é parte de um amplo processo de verificação e validação (V&V). Validação: estamos construindo o produto certo? garante que o software atenda às expectativas do cliente. Verificação: estamos construindo o produto da maneira certa? checa se o software atende a seus requisitos funcionais e não funcionais.

11 Níveis de teste de Software
O planejamento dos teste deve ocorrer em diferentes níveis e em paralelo ao desenvolvimento.

12 Níveis de teste de Software
Os principais níveis de teste são: Teste de Unidade Teste de Integração Teste de Sistema Teste de Aceitação Teste de Regressão

13 Níveis de teste de Software
Teste de Unidade ou Unitário: Explora a menor unidade do projeto, procurando provocar falhas ocasionadas por defeitos de lógica e de implementação em cada módulo, separadamente. Uma ferramenta muito utilizada é o Junit.

14 Níveis de teste de Software
Teste de Integração: Visa provocar falhas associadas às interfaces entre os módulos quando esses são interligados para construir a estrutura do software.

15 Níveis de teste de Software
Teste de Sistema (teste alfa).: Avalia o software em busca de falhas por meio da utilização do mesmo, como se fosse um usuário final Os testes são executados nos mesmos ambientes, com as mesmas condições e com os mesmos dados de entrada que um usuário utilizaria no seu dia-a-dia de manipulação do software.

16 Níveis de teste de Software
Teste de Aceitação (teste beta): São realizados geralmente por um restrito grupo de usuários finais do sistema. Esses simulam operações de rotina do sistema de modo a verificar se seu comportamento está de acordo com o solicitado.

17 Níveis de teste de Software
Teste de Regressão: É uma estratégia importante para redução de “efeitos colaterais”. Consiste em se aplicar, a cada nova versão do software ou a cada ciclo, todos os testes que já foram aplicados nas versões ou ciclos de teste anteriores do sistema.

18 Técnicas de Teste de Software
Técnica Estrutural – Teste de Caixa Branca Técnica Funcional – Teste de Caixa Preta

19 Técnicas de Teste de Software
Caixa Branca Essa técnica trabalha diretamente sobre o código fonte do componente de software para avaliar aspectos tais como: teste de condição, teste de fluxo de dados, teste de ciclos e teste de caminhos lógicos (PRESSMAN, 2005).

20 Técnicas de Teste de Software
Caixa Preta Dados de entrada são fornecidos, o teste é executado e o resultado obtido é comparado a um resultado esperado previamente conhecido. Ex. Testes em Interfaces Web com Selenium IDE.

21 Técnicas de Teste de Software
Outras técnicas de teste podem e devem ser utilizadas de acordo com necessidades de negócio ou restrições tecnológicas: Teste de desempenho, Teste de usabilidade, Teste de carga, Teste de stress, Teste de confiabilidade, Teste de recuperação,

22 Conclusões O teste de software é uma das atividades mais custosas do processo de desenvolvimento de software, pois pode envolver uma quantidade significativa dos recursos de um projeto. O rigor e o custo associado a esta atividade dependem principalmente da criticilidade da aplicação a ser desenvolvida.

23 Conclusões Apoio ferramental para qualquer atividade do processo de teste é importante como mecanismo para redução de esforço associado à tarefa em questão, seja ela planejamento, projeto ou execução dos testes.

24 Referências


Carregar ppt "Introdução aos conceitos de Teste de Software"

Apresentações semelhantes


Anúncios Google