INTRODUÇÃO A ENGENHARIA DE SOFTWARE

Documentos relacionados
Engenharia de Software

ENGENHARIA DE SOFTWARE O QUE SÃO TESTES? TESTES TESTES TESTES 26/08/2014. São pontuais; São previsíveis; São finitos;

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software

Teste de Software. Professor Maurício Archanjo Nunes Coelho

Verificação, Validação e Teste de Software

Teste de Software. Karen Frigo Busolin Novembro / 2010

TESTES DE SOFTWARE Unidade 1 Importância do Teste de Software. Luiz Leão

TESTES DE SOFTWARE 1. Fundamentos sobre testes de software

Teste de Software. Planejamento de Teste. Rosemary Silveira Filgueiras Melo

Introdução a Teste de Software

TS02. Teste de Software INTRODUÇÃO AO PROCESSO DE TESTE DE SOFTWARE. COTI Informática Escola de Nerds

Estágio II. Aula 01 Qualidade de Software. Prof. MSc. Fred Viana

Teste de Software. Estratégias de Teste. Rosemary Silveira Filgueiras Melo

Estágio II. Aula 02 Conceitos de Teste de Software. Prof. MSc. Fred Viana

Engenharia de Software

1. A principal razão de dividir o processo de teste em tarefas distintas é:

Engenharia de Software

ENGENHARIA DE SOFTWARE

Desenvolvimento de Software. Testes de Software. Tópicos da Aula. Onde estamos... Verificação x Validação. Testes de Software

TS03. Teste de Software ESTÁGIOS DO TESTE DE SOFTWARE. COTI Informática Escola de Nerds

TESTES DE SOFTWARE Lista de Exercício 01. Luiz Leão

Teste de Software. Objetivo: Executar software para revelar erros/falhas ainda não descobertos. Pode gastar 40% do esforço de desenvolvimento

Teste de Software. Técnica de Teste Estrutural. Rosemary Silveira Filgueiras Melo

- 8ª Lista de Exercícios -

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016

Introdução aos Testes de Software

Guia do Processo de Teste Metodologia Celepar

TESTES DE SOFTWARE Lista de Exercício 02. Luiz Leão

Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr.

Teste de Software: conceitos, técnicas e benefícios

JUnit. Facilitando o desenvolvimento e execução de testes unitários em código java. Peterson Rodrigues

Plano de Testes VideoSystem

Teste de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015

Organização para Realização de Teste de Software

Teste de Software Intermediário

Análise e projeto de sistemas

Engenharia de Software

Estágio II. Aula 04 Testes Ágeis. Prof. MSc. Fred Viana

Testes de Software. Prof. Edjandir C. Costa

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Testar: impossível. Jorge Diz Globalcode. Agile Brazil 2010 Slide 1

Uso de Processo em Fábrica de Teste

Gestão de Testes e Defeitos. Malba Jacob Prudente

LIVRO ENGENHARIA DE SOFTWARE FUNDAMENTOS, MÉTODOS E PADRÕES

Teste de Software. Técnica de Teste Estrutural. Rosemary Silveira Filgueiras Melo

Engenharia de Software. Prof. Raquel Silveira

Análise e Projeto Orientado a Objetos

DICIONÁRIO DA ESTRUTURA ANALÍTICA DO PROJETO - SISCOP. Data Versão Descrição Autor

CASOS DE TESTE PALESTRANTE: MARCIA SILVA

As 10 Áreas da Engenharia de Software, Conforme o SWEBOK Prof. Elias Ferreira

7 Conclusão e Trabalhos Futuros

Fundamentos de Teste de Software

TESTES DE SOFTWARE. Profa. Maria Auxiliadora

Documento de Visão versão 1.0 Desenvolvimento do Sistema de Gestão de Documentos Doc Manager Cliente: São José Agroindustrial Representante do

Processos de Validação e Verificação do MPS-Br

Community. .com. Introdução ao T D

Programação Orientada a Objetos

Especificação do Caso de Uso

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

1. Quando algo visível para os usuário finais é um desvio em relação ao especificado ou um comportamento não esperado, isso é chamado de:

Verificação e Validação

2

6. QUAIS AS TÉCNICAS E RESPECTIVOS CRITÉRIOS DE TESTE EXISTENTES?

SISCOP Sistema de Controle Pedidos RT003 Incluir Produto Estratégia de Testes

30% a 50% dos custos desenvolvimento A complexidade torna impossível teste completo (cobertura total) Mas...

Prof. Luiz A. Nascimento

ENGENHARIA DE SOFTWARE. Aula 12 Testes de software

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO

Verificação e Validação (V & V)

Manutenção de Software

SSC 0721 Teste e Validação de Software

Engenharia de Software

Teste de Software Básico

Teste de Software Parte 2. Prof. Jonas Potros

Teste de Software. Roberta Coelho

Verificação e Validação

Fundamentos de Teste de Software

3. Engenharia dos requisitos de software

Testes de software - Teste funcional

Princípios da Engenharia de Software aula 03

114 analista DE ti - teste E QUaliDaDE Data e horário da prova: Domingo, 20/01/2013, às 14h.

4 Caso de Uso no Ambiente Oracle

Engenharia de Software

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima

Engenharia de Software.

Organização para Realização de Teste de Software Quando o teste se inicia há um conflito de interesses:

Estratégias de Testes Parte I

DESENHO DE CARGOS E TAREFAS

ISO/IEC 12207: Manutenção

Sistema de Controle de Pedidos SISCOP. SISCOP Sistema de Controle Pedidos RT002 Incluir Ponto Remoto Estratégia de Testes. Versão 2.

Coordenação Geral de Tecnologia da Informação - CGTI. SOLICITA SISTEMA DE SOLICITAÇÃO DE ACESSO Manual de Usuário. Versão 1.0

Engenharia de Software

Qualidade de software. Prof. Emiliano Monteiro

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Ferramenta WEB de Apoio ao planejamento e controle de teste de software. Bruna Tatiane Bonecher Orientadora: Fabiane Barreto Vavassori Benitti

Aula 23 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016

Plano de testes. Norma ANSI/IEEE para Documentação de Teste de Software define plano de testes como:

Teste de Software. Proj. Desenvolvimento de Software. Prof. Cleverton Hentz. 30 de agosto de Material Apresentado

Transcrição:

Universidade TESTE Estadual DE SOFTWARE Vale do Acaraú O que são testes? INTRODUÇÃO A ENGENHARIA DE SOFTWARE Teste é um processo de avaliar um sistema ou um componente de um sistema para verificar se ele satisfaz os requisitos especificados ou identificar diferenças entre resultados esperados e obtidos. [ANSI/IEEE Standard 729,1983] Processo de executar um programa com objetivo de encontrar erros. [Myers, 1979] Prof. Raquel Silveira 1 2 São pontuais; Antigamente... São previsíveis; São finitos; Testes não verificam completamente a saída de um programa, pois as entradas são infinitas. No passado, a tarefa de efetuar testes em software era considerada secundária. Os testes eram feitos por desenvolvedores. Os usuários eram envolvidos para aprovar o resultado dos testes ou para gerar massa de dados. 3 4 Atualmente... Naturalmente o assunto não é tão simples Empresas tem visto a atividade de teste como prioritária para a maior qualidade de suas aplicações. Não testar o software pode gerar perdas financeiras e de imagem irreparáveis. Complexidade das aplicações que estão cada vez mais distribuídas. 5 Erros nem sempre são óbvios; Erros diferentes podem ter a mesma manifestação; Saber que um programa não está correto não necessariamente é saber como corrigir o erro. 6 1

Falhas no Software 1/3 das falhas de software poderiam ser evitadas com teste; Aproximadamente 50% das falhas só são encontradas em produção. Falhas custam caro - Segundo uma pesquisa do Departamento de Comércio dos EUA, publicada em 2002, falhas de software são tão comuns e tão danosas que se estima que causem prejuízo anual de mais de 60 bilhões de dólares para a economia americana. 7 8 Qual é o custo de encontrar falhas posteriormente? O custo de correção dos defeitos encontrados durante a produção tende a aumentar quanto mais tarde o defeito é detectado. 12000 10000 8000 6000 4000 2000 0 Regra 10 de Myers Designer Implementação Teste Produção Você confia no que faz? Cliente: Isso aqui não está funcionando! Programador: Mas como?! Na minha máquina estava funcionando até ontem. 9 10 Garanta o seu trabalho, seja profissional Pré-Conceitos Errado -Num mundo capitalizado não há tempo para teste; -O cliente não quer saber como é feito, ele quer que funcione. Realidade -O cliente não quer saber se X virou Y. Ele quer que o problema não aconteça e se acontecer seja corrigido rapidamente. -Não se consegue qualidade e confiabilidade sem teste. 11 O testador é um inimigo do desenvolvedor; A equipe de teste pode ser montada com os desenvolvedores menos qualificados, pois qualquer um pode testar sistemas; 12 2

= Validação? Processo de avaliação de um sistema ou componente para determinar se os artefatos produzidos satisfazem determinadas. às especificações Estamos construindo o produto corretamente? Validação Processo de avaliação para determinar se o sistema atende as necessidades e requisitos dos usuários. Estamos construindo o produto certo? 13 14 Aceitação Revisão técnica Aceitação Teste Teste Componente Componente (Garantia de Qualidade) Unidade Validação (Controle de Qualidade) (Garantia de Qualidade) Unidade Validação (Controle de Qualidade) 15 16 de Aceitação Projeto Prematuro de Testes de Integração de Unidade 17 18 3

de Aceitação Aceitação Teste Modelo de integração entre os processos de desenvolvimento e teste TESTE Especificação DESENVOLVIMENTO Desenho lógico e físico de Integração de Unidade Componente Unidade Execução (1) Execução (2) Teste unitário integração e sistema Implantação Entrega aceitação Entrega 19 20 PROFISSIONAIS TESTE EM DE TESTE SOFTWARE DE SOFTWARE Geralmente temos as seguintes situações: Depois eu escrevo o plano de testes... Vamos deixar os testes para a próxima fase... Na minha máquina funcionou... Temos que entregar o produto na semana que vem... 21 TESTADOR Execução dos testes funcionais no sistema guiado pelo caso de teste. AUTOMATIZADOR DE TESTE Criação dos scripts de automação do sistema guiado pelo caso de teste. ANALISTA DE TESTE Criação do Plano de Teste e casos de teste. ENGENHEIRO / ARQUITETO DE TESTE Criação e execução de testes não funcionais, criação do ambiente de teste e automação. LÍDER / COORDENADOR DE TESTE Acompanhamento dos testes e criação de relatórios de teste. Apoio ao time de teste. 22 Categorias de teste Caixa Branca caixa branca (White box) Testes de unidade de código; Testam parte da solução; caixa preta (Black box) São escritos e mantidos pelo programador e devem estar sempre atualizados. 23 24 4

Caixa Branca Cobertura dos testes Quando construímos um teste de unidade, o principal desafio é isolar a classe ou trecho de código que está sendo testado, para que nenhuma outra classe do sistema seja envolvida no teste e influencie no resultado esperado. Dificilmente consegue-se 100% de cobertura de testes. Quanto maior cobertura dos testes na aplicação, maior a confiabilidade nas alterações e novos recursos. 25 26 Cobertura dos testes Aplicações cobertas por bons testes propiciam: -Facilidade de manutenção; - Menos problemas e relação de custos em manutenção. Testes de caixa preta Testes funcionais e de aceitação; Testes de integração; Testam a solução completa. 27 28 Ciclo de TESTE Vida do DE Processo SOFTWARE de Teste Dimensões do teste Tipo de teste (O que testar) 2ª funcionalidade interface desempenho usabilidade volume... Técnica de Teste (Como testar) 3ª Funcional Estrutural 1ª unidade Estágio ou níveis de teste integração (Quando testar) sistema aceitação 29 30 5

Exercício rápido Como você testaria uma calculadora? -Um dos documentos contidos na fase de Elaboração é a Especificação de Caso de Teste. Este documento deve conter: Identificação das condições do teste (pré e pós condições) Identificação dos casos de teste (o que testar) Detalhamento da massa de entrada Especificação das configurações de ambiente Definir o tipo de implementação (automática ou manual) 31 32 TESTE Elaboração DE SOFTWARE Exemplo de elaboração de caso de teste Especificação do sistema: Autenticação de Usuário. Autenticação Login Senha TESTE Elaboração DE SOFTWARE Exemplo de elaboração de caso de teste Do requisito do cliente, podemos criar as seguintes idéias de teste: OK Esqueceu a senha? LIMPAR Efetuar o login na aplicação com um login válido e senha de, no mínimo 6 (seis) caracteres. 33 34 TESTE Elaboração DE SOFTWARE Exemplo de elaboração de caso de teste Título: Senha Inválida Ambiente: Windows XP Pré-Condições: - Possuir um usuário válido. Passo 1. O usuário inicia a aplicação. 2. O usuário preenche os campos Login e Senha conforme as idéias de teste. Resultado Esperado Verificar se os campos são preenchidos corretamente. 3. O usuário seleciona Efetuar Login. Verificar se quando o usuário informa uma senha menor que 6 caracteres, o sistema exibe a mensagem: Senha inválida.. 4. O usuário confirma a mensagem. 35 6