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

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

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

Apresentações semelhantes


Apresentação em tema: "Introdução aos conceitos de Teste de Software Prof. Wolley W. Silva."— 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. – costs_users_vendors_nearly_60B_annually O foguete Ariane 5 explodiu por um erro de software. – Erro de software provoca a morte de 21 pacientes em tratamento de câncer. – tent/1/casoICancerPanama.pdf

4 Nenhum software esta livre de falhas ! encontrou-falha-no-facebook-e-um-cacador-de-bugs.html

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 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. Definições

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 Entrada de dados de teste Saída de resultado de teste Entradas que causam comportamentos anômalos Saídas que revelam falhas 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 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 Níveis de teste de Software

13 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. Níveis de teste de Software

14 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. Níveis de teste de Software

15 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. Níveis de teste de Software

16 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. Níveis de teste de Software

17 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. Níveis de teste de Software

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

19 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). Técnicas de Teste de Software

20 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. Técnicas de Teste de Software

21 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, Técnicas de Teste de Software

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 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. Conclusões

24 Referências engenharia-de-software-introducao-a-teste- de-software/8035


Carregar ppt "Introdução aos conceitos de Teste de Software Prof. Wolley W. Silva."

Apresentações semelhantes


Anúncios Google