Teste de Software -...

53
Teste de Software Roberta Coelho

Transcript of Teste de Software -...

Page 1: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Teste de Software

Roberta Coelho

Page 2: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Agenda

Desafios do Teste de Software

Atividades Realizadas em 2014

Atividades Planejadas

Page 3: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Agenda

Desafios do Teste de Software

Atividades Realizadas em 2014

Atividades Planejadas

Page 4: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Teste de Software

Uma das técnicas mais utilizadas para garantia

da qualidade pela indústria de SOFTWARE.

Page 5: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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...

Page 6: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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.

?!

Page 7: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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???

Page 8: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

No contexto dos SIGs

Um caso de uso possuir geralmente várias telas...

SIGAA - 1858

SIPAC - 1775

SIGRH - 675

Page 9: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

No contexto dos SIGs

Cada caso de uso possui vários fluxos...

SIGAA - 1858

SIPAC - 1775

SIGRH - 675

Page 10: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

10

O número de casos de testes possíveis é

ASTRONÔMICO!!!

Page 11: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Já que não podemos testar para todas as

entradas possíveis...

Page 12: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Precisamos de dados de teste que aumentem

as chances de revelar defeitos…

Page 13: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Incompletude dos Testes

Utilizamos: Testes Exploratórios

Page 14: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Enfrentando o desafio

- Guias para TESTE EXPLORATÓRIO

- Critérios de Teste (Treinamento)

- Logs de Erro padronizados

Page 15: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Agenda

Desafios do Teste de Software

Atividades Realizadas em 2014

Atividades Planejadas

Desafio 1: Impossível testar todas as entradas

Desafio 2: Testes de Regressão

Page 16: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Desafio 2: Teste de Regressão

A alteração em um caso de uso

pode afetar outros que dependem dele...

Page 17: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Desafio 2: Teste de Regressão

Corrigir um Bug pode introduzir vários outros...

Page 18: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Desafio 2: Testes de Regressão

Ou seja... não é suficiente testar somente

as funcionalidades adicionadas e alteradas...

Page 19: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Desafio 2: Testes de Regressão

Enfrentando o desafio:

- Automação de testes

- Análise de dependência entre

os casos de uso.

Page 20: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Benefícios da Automação

Tornar testes de REGRESSÃO mais rápidos.

Reduzir o custo da atividade de testes??

Facilita o teste multi-plataforma.

Page 21: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Falsas expectativas sobre

automação de testes

Page 22: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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.

Page 23: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Falsas Expectativas

"NÃO espere que a equipe seja

mais produtiva a CURTO PRAZO!!!"

Page 24: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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.

Page 25: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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!!

Page 26: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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.

Page 27: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Cuidados com Testes Automatizados

Um esforço adicional ainda é requerido

para dar manutenção nas classes de teste.

Page 28: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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

Page 29: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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.

Page 30: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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.

Page 31: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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.

Page 32: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Agenda

Desafios do Teste de Software

Atividades Realizadas em 2014

Atividades Planejadas

Desafio 1: Impossível testar todas as entradas

Desafio 2: Testes de Regressão

Desafio 3: Testes ao longo do processo de desenvolvimento

Page 33: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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

Page 34: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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

Se o código não foi projetado pensando em

testes....

Page 35: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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”.

Page 36: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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

Implementação Testes de

Unidade

Testes de

Integração

Testes de

Sistema

Testes

de Aceitação

Especificação de

Requisitos

Arquitetura

Projeto

Modelo V

Equipe de

Controle de

Qualidade

Equipe de

Desenvol-

vimento

Page 37: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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

Implementação Testes de

Unidade

Testes de

Integração

Testes de

Sistema

Testes

de Aceitação

Especificação de

Requisitos

Arquitetura

Projeto

Modelo V

Equipe de

Controle de

Qualidade

Equipe de

Desenvol-

vimento

Page 38: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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

Implementação Testes de

Unidade

Testes de

Integração

Testes de

Sistema

Testes

de Aceitação

Especificação de

Requisitos

Arquitetura

Projeto

Modelo V

Equipe de

Controle de

Qualidade

Equipe de

Desenvol-

vimento

Page 39: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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

Page 40: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Testar a procura de defeitos é como

procurar agulhas num palheiro...

Um paralelo...

Definindo estratégias para aumentar as chances de encontrar as agulhas...

Page 41: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Incompletude dos Testes

Se encontrarmos

agulhas não

podemos garantir

que não sobraram outras...

Mesmo utilizando critérios e ferramentas

na fase de testes e desenvolvimento...

Page 42: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

O Suporte também participa do controle de

qualidade - ponto de contato com o usuário

Equipe de Suporte

Não está funcionando

Dúvida

CI!!

Não está funcionando

Dúvida

Sugestão

Não está funcionando

Dúvida

CI!!

Page 43: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Não está funcionando

Dúvida

CI!!

Não está funcionando

Dúvida

Sugestão

Não está funcionando

Dúvida

CI!!

Padronizamos logs de falhas reportadas

Permite:

- analisar mensamente as causas

- atacar pontualmente as causas

Equipe de Suporte na Garantia da Qualidade

Page 44: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Agenda

Desafios do Teste de Software

Atividades Realizadas em 2014

Atividades Planejadas

Desafio 1: Impossível testar todas as entradas

Desafio 2: Testes de Regressão

Desafio 3: Testes ao longo do processo de desenvolvimento

Page 45: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Atividades Realizadas em 2014

Automação de Testes com Selenium

Testes de Desempenho com JMeter

Iniciativa da Equipe de Desenvolvimento:

JUnit + Power Mock

Migração do Selenium RC para WebDriver

Manutenção dos Casos de Teste

Novos Casos de Teste

Page 46: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Atividades Realizadas em 2014

Guias de Desenvolvimento: Como tratar

exceções nos SIGs?

Estudo: Análise das principais causas de CI

Ferramenta implementada: Identificar exceções

não documentadas lançadas por bibliotecas

Exceções não documentadas lançadas por bibliotecas.

Page 47: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Agenda

Desafios do Teste de Software

Atividades Realizadas em 2014

Atividades Planejadas

Desafio 1: Incompletude dos Testes

Desafio 2: Testes de Regressão

Desafio 3: Testes ao longo do processo de desenvolvimento

Page 48: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

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)

Page 49: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Atividades Planejadas

Estudo: Como os defeitos do tipo CI são

solucionados (Mestrado)

Compartilhar desafios, dificuldades e soluções

com os parceiros.

Page 50: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Equipe de Testes

João – Pablo – Dalton (coord.) – Raynison – Márcia – Leandro

Page 51: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Contato

Roberta Coelho (Profa. Colaboradora)

[email protected]

Dalton Dantas (Coordenador)

[email protected]

Page 52: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

52

Referências

Page 53: Teste de Software - arquivos.info.ufrn.brarquivos.info.ufrn.br/.../TesteDeSoftware_WorkshopSINFO2014.pdf · Desafios do Teste de Software Atividades Realizadas em 2014 Atividades

Teste de Software

Roberta Coelho