Teste de Software. Roberta Coelho

Documentos relacionados
Teste de Software. Karen Frigo Busolin Novembro / 2010

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

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

Teste de Software Parte 2. Prof. Jonas Potros

Introdução a Teste de Software

- 8ª Lista de Exercícios -

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

O papel do QA (Testador) em um time Ágil. #caipiraagil2017

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

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

Engenharia de Software Aula 21. Revisão da Prova 2. Eduardo Figueiredo.

TESTES DE SOFTWARE 1. Fundamentos sobre testes de software

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

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

INTRODUÇÃO A ENGENHARIA DE SOFTWARE

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

Teste de Software. Professor Maurício Archanjo Nunes Coelho

Engenharia de Software

DESCOBERTO. (Glen Myers)

Teste como Serviço (TaaS) na Computação em Nuvem

Processos de software

especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje

SSC 0721 Teste e Validação de Software

Extreme Programming. Projeto de. Desenvolvimento. Software. Prof.: Ari Oliveira

Programação Orientada a Objetos

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

Teste de software. Engenharia de software Profª karine sato da silva

Guia do Processo de Teste Metodologia Celepar

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

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Prof. Fabiano Papaiz IFRN

Desconstruindo Monolitos. Como construir micro serviços Delphi com agilidade e qualidade

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

ENGENHARIA DE SOFTWARE. Aula 12 Testes de software

UNIVERSIDADE REGIONAL DE BLUMENAU CURSO DE SISTEMAS DE INFORMAÇÃO - BACHARELADO. Eduardo Cesar Eberle Prof. Wilson Pedro Carli, Orientador

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:

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

Manutenção Leitura: Sommerville; Pressman

ENGENHARIA DE SOFTWARE

Introdução aos Testes de Software

Leitura: Cap : Sommerville; cap20: Pressman

Testes de Software. Prof. Edjandir C. Costa

Teste de Software Básico

Teste de Software Intermediário

Engenharia de Software

Visão prática do BDD (Behavior Driven Design) para agilizar o processo de desenvolvimento

ISO/IEC 12207: Manutenção

ARIES. Visão Geral da Metodologia Aries

Workshop CTIC 2017 COORDENADORIA DE SISTEMAS DE INFORMAÇÃO

Engenharia de Software

Professor Emiliano S. Monteiro

Princípios da Engenharia de Software aula 03

Engenharia de Software II

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

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

1. A função DevOps, que se concentra principalmente em Produtos & Serviços:

Testes Ágeis com BDD. Por que o BDD pode salvar o agile? Paloma Costa

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

Plano de Testes VideoSystem

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015

Disciplina: Engenharia de Software. 3 Bimestre Aula 2: EVOLUÇÃO DE SOFTWARE

Gestão de Segurança da Informação. Interpretação da norma NBR ISO/IEC 27001:2006. Curso e Learning Sistema de

Engenharia de Software

Como as aplicações de entretenimento (em especial jogos digitais) têm enfrentado um constante crescimento, tanto em tamanho quanto em complexidade,

Modelo Espiral. Criação do(s) protótipos(s) Formulação de questões. Teste Avaliação Conclusão

QUALIDADE DE SOFTWARE

Gerenciamento de Projetos

DOCUMENTAÇÃO DE TESTE

MÓDULO 16 PLANEJAMENTO DE CONSTRUÇÃO, TESTES E DOCUMENTAÇÃO DO SISTEMA

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

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

Gestão de Testes e Defeitos. Malba Jacob Prudente

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

Teste de Software Orientado a Objeto. Ricardo Argenton Ramos

Verificação e Validação

ISO/IEC Processo de ciclo de vida

Escolhendo um Modelo de Ciclo de Vida

QUESTÕES TESTES. Questão 1. O modelo de ciclo de vida em cascata:

Transcrição:

Teste de Software Roberta Coelho

Agenda Desafios do Teste de Software Atividades Realizadas em 2014 Atividades Planejadas

Agenda Desafios do Teste de Software Atividades Realizadas em 2014 Atividades Planejadas

Teste de Software Uma das técnicas mais utilizadas para garantia da qualidade pela indústria de SOFTWARE.

Teste de Software Uma das técnicas mais utilizadas para garantia da qualidade pela indústria de SOFTWARE. A falta de entendimento sobre a atividade de testes pode trazer vários problemas...

Diálogo entre desenvolvedor e testador 1 dia antes do fechamento da release... Ei cara, dá uma passada geral no SIGAA. Precisei alterar várias coisas!!?! Ok Pra dar uma passada geral vou precisar de no mínimo 1 ano.

Garantindo ausência de defeitos func(int a, int b, int c) int: -2.147.483.648 a 2.147.483.647 número de entradas possíveis: 9.903.520.314.283.042.199.192.993.792 Como garantir que esta função não contém defeitos???

No contexto dos SIGs Um caso de uso possuir geralmente várias telas... SIGAA - 1858 SIPAC - 1775 SIGRH - 675

No contexto dos SIGs Cada caso de uso possui vários fluxos... SIGAA - 1858 SIPAC - 1775 SIGRH - 675

10 O número de casos de testes possíveis é ASTRONÔMICO!!!

Já que não podemos testar para todas as entradas possíveis...

Precisamos de dados de teste que aumentem as chances de revelar defeitos

Incompletude dos Testes Utilizamos: Testes Exploratórios

Enfrentando o desafio - Guias para TESTE EXPLORATÓRIO - Critérios de Teste (Treinamento) - Logs de Erro padronizados

Agenda Desafios do Teste de Software Desafio 1: Impossível testar todas as entradas Desafio 2: Testes de Regressão Atividades Realizadas em 2014 Atividades Planejadas

Desafio 2: Teste de Regressão A alteração em um caso de uso pode afetar outros que dependem dele...

Desafio 2: Teste de Regressão Corrigir um Bug pode introduzir vários outros...

Desafio 2: Testes de Regressão Ou seja... não é suficiente testar somente as funcionalidades adicionadas e alteradas...

Desafio 2: Testes de Regressão Enfrentando o desafio: - Automação de testes - Análise de dependência entre os casos de uso.

Benefícios da Automação Tornar testes de REGRESSÃO mais rápidos. Facilita o teste multi-plataforma. Reduzir o custo da atividade de testes??

Falsas expectativas sobre automação de testes

Falsas Expectativas Redução imediata no esforço dedicado testes. Redução imediata no cronograma. Ferramentas fáceis de usar. Testes são fáceis de manter. Uma única ferramenta pode automatizar todos tipos de teste.

Falsas Expectativas "NÃO espere que a equipe seja mais produtiva a CURTO PRAZO!!!"

Falsas Expectativas "NÃO espere que a equipe seja mais produtiva a CURTO PRAZO!!!" A maioria dos benefícios da automação não aparece antes do segundo release.

Falsas Expectativas "NÃO espere que a equipe seja mais produtiva a CURTO PRAZO!!!" criação de testes automatizados X execução de testes manuais Esforço de 3 a 10 maior!!

Projeto: SIGAutomação Testes automatizados usando Selenium SIGAA - 304 classes - 287 classes de teste. SIGRH - 24 classes - 15 classes de testes SIGADmin - 45 classes - 42 classes de teste.

Cuidados com Testes Automatizados Um esforço adicional ainda é requerido para dar manutenção nas classes de teste.

Cuidados com Testes Automatizados Um esforço adicional ainda é requerido para dar manutenção nas classes de teste. Módulo EAD Sucesso: 57 Skip: 27 / Falha: 23 Módulo Lato Sensu: Sucesso: 40 Skip: 12 / Falha: 15

Cuidados com Testes Automatizados Um esforço adicional ainda é requerido para dar manutenção nas classes de teste. Mudanças nos casos de uso Links alterados: "Consultar Histórico "Emitir Histórico". Erro na implementação do teste. Erro no sistema. Falta de dados de teste.

Cuidados com Testes Automatizados Utilizamos práticas de programação para evitar: - Código macarrônico - Sem modularidade - Sem controle de versões - Sem documentação Pois, isto pode levar ao fracasso da automação!!! Exemplo Win NT4: 6 milhões de linhas de código e 12 milhões de linhas de código de teste.

Automação de Testes CUIDADOS COM A AUTOMAÇÃO!!! Código de testes precisa ser mantido assim como código dos sistemas. Planejar e incorporar custo associado a manutenção. Executar com frequência. Não substituem testes manuais.

Agenda Desafios do Teste de Software Desafio 1: Impossível testar todas as entradas Desafio 2: Testes de Regressão Desafio 3: Testes ao longo do processo de desenvolvimento Atividades Realizadas em 2014 Atividades Planejadas

Desafio 3: Teste não é a cobertura do bolo

Desafio 3: Teste não é a cobertura do bolo Se o código não foi projetado pensando em testes...

Desafio 3: Teste não é a cobertura do bolo Enfrentando o desafio: A qualidade é um compromisso de TODOS, não só da equipe de Controle de Qualidade.

Desafio 3: Teste não é a cobertura do bolo Especificação de Requisitos Arquitetura Testes de Aceitação Testes de Sistema Equipe de Controle de Qualidade Projeto Implementação Testes de Integração Testes de Unidade Equipe de Desenvolvimento Modelo V

Desafio 3: Teste não é a cobertura do bolo Especificação de Requisitos Arquitetura Testes de Aceitação Testes de Sistema Equipe de Controle de Qualidade Projeto Implementação Testes de Integração Testes de Unidade Equipe de Desenvolvimento Modelo V

Desafio 3: Teste não é a cobertura do bolo Especificação de Requisitos Arquitetura Testes de Aceitação Testes de Sistema Equipe de Controle de Qualidade Projeto Implementação Testes de Integração Testes de Unidade Equipe de Desenvolvimento Modelo V

Porém por mais que se teste... O teste pode mostrar a presença de falhas em um software, mas nunca a sua ausência. Dijkstra

Um paralelo... Testar a procura de defeitos é como procurar agulhas num palheiro... Definindo estratégias para aumentar as chances de encontrar as agulhas...

Incompletude dos Testes Mesmo utilizando critérios e ferramentas na fase de testes e desenvolvimento... Se encontrarmos agulhas não podemos garantir que não sobraram outras...

Equipe de Suporte O Suporte também participa do controle de qualidade - ponto de contato com o usuário CI!! Sugestão CI!! Dúvida Não está funcionando Dúvida Não está funcionando Dúvida Não está funcionando

Equipe de Suporte na Garantia da Qualidade CI!! Sugestão CI!! Dúvida Não está funcionando Dúvida Não está funcionando Dúvida Não está funcionando Padronizamos logs de falhas reportadas Permite: - analisar mensamente as causas - atacar pontualmente as causas

Agenda Desafios do Teste de Software Desafio 1: Impossível testar todas as entradas Desafio 2: Testes de Regressão Desafio 3: Testes ao longo do processo de desenvolvimento Atividades Realizadas em 2014 Atividades Planejadas

Atividades Realizadas em 2014 Automação de Testes com Selenium Migração do Selenium RC para WebDriver Manutenção dos Casos de Teste Novos Casos de Teste Testes de Desempenho com JMeter Iniciativa da Equipe de Desenvolvimento: JUnit + Power Mock

Atividades Realizadas em 2014 Estudo: Análise das principais causas de CI Exceções não documentadas lançadas por bibliotecas. Guias de Desenvolvimento: Como tratar exceções nos SIGs? Ferramenta implementada: Identificar exceções não documentadas lançadas por bibliotecas

Agenda Desafios do Teste de Software Desafio 1: Incompletude dos Testes Desafio 2: Testes de Regressão Desafio 3: Testes ao longo do processo de desenvolvimento Atividades Realizadas em 2014 Atividades Planejadas

Atividades Planejadas Treinamento em Teste de Software Continuidade das atividades de manutenção de casos de teste Selenium. Ferramenta para geração semi-automática de Casos de Teste Selenium (Mestrado) Ferramenta para auxiliar o desenvolvimento do código de Tratamento de Exceções (Mestrado)

Atividades Planejadas Estudo: Como os defeitos do tipo CI são solucionados (Mestrado) Compartilhar desafios, dificuldades e soluções com os parceiros.

Equipe de Testes João Pablo Dalton (coord.) Raynison Márcia Leandro

Contato Dalton Dantas (Coordenador) dalton@info.ufrn.br Roberta Coelho (Profa. Colaboradora) roberta@dimap.ufrn.br

Referências 52

Teste de Software Roberta Coelho