Escolar Documentos
Profissional Documentos
Cultura Documentos
Pgina 1
ndice
1. Introduo...............................................................................................................................5 0.1 Objetivo.............................................................................................................................5 0.2 Pblico Alvo......................................................................................................................5 0.3 Referncias.......................................................................................................................5 1 Design e Execuo de Teste...................................................................................................5 1.1 Anlise e Design de Teste................................................................................................5 1.1.1 Identificao e priorizao das condies de teste.....................................................5 1.1.2 Identificao e priorizao dos casos de teste............................................................6 1.1.3 Identificao da necessidade de dados especficos de teste......................................6 1.1.4 Rastreabilidade horizontal com os requisitos..............................................................7 1.2 Implantao de Teste........................................................................................................7 1.2.1 Desenvolvimento e priorizao de procedimentos de teste........................................7 1.2.2 Criao de dados de teste..........................................................................................9 1.2.3 Desenvolvimento do cronograma de execuo de teste.............................................9 1.3 Execuo e Relatrios de Teste........................................................................................9 1.3.1 Execuo dos casos de teste.....................................................................................9 1.3.2 Relatrios de teste....................................................................................................11 1.3.3 Relatrio de Log de teste..........................................................................................12 1.3.4 Relatrio de incidentes de teste................................................................................13 1.3.5 Relatrio de Sumrio de Teste.................................................................................14 1.3.6 Mquina de estado para transio de defeitos.........................................................14 1.4 Gerenciamento dos Incidentes de Teste para o Encerramento......................................16 1.4.1 Decidir sobre os incidentes no bordo de controle de mudana.................................16 1.4.2 Aes para corrigir os incidentes de teste................................................................17 1.4.3 Acompanhamento do status dos incidentes de teste................................................17
Pgina 2
ndice de Tabelas
Tabela 1 Grfico Curva-S........................................................................................................10 Tabela 2 Mquina de estado para transio de defeitos Fluxo Principal..............................16 Tabela 3 Mquina de estado para transio de defeitos Fluxo Alternativo...........................16
Pgina 3
ndice de Figuras
Figura 1 Grfico Curva-S.........................................................................................................11 Figura 2 Relao de documentos de teste para o processo de teste - IEEE 829 -1998.........12 Figura 3 Mquina de estado para transio de defeitos..........................................................15
Pgina 4
1. Introduo
0.1 Objetivo
O objetivo deste documento definir e documentar o design e execuo de teste incluindo anlise e design, implantao, execuo e relatrio de tete e gerenciamento dos incidentes de teste para o encerramento.
0.3 Referncias
[1] IEEE Std 829-1998, IEEE Standard for Software Test Documentation
Pgina 5
Teste de Software Por onde comear? Design e Execuo de Teste o o o o o Identificador da especificao de design de teste; Itens e caractersticas a serem testadas; Refinamentos da abordagem; Condies de teste; Critrio de aprovao e reprovao.
Associar os requisitos com cada caso de teste sendo possvel um caso testar mais de um requisito. Essa associao essencial e com isso possvel gerar uma Matriz de Rastreabilidade entre teste x requisitos; Adicionar uma categoria para o caso de teste, por exemplo: positivo, negativo, desempenho (performance), stress, interao, etc. Um caso de teste pode ter mais de uma categoria; Revisar os casos de teste criados com as partes interessadas; Caso haja alguma mudana nos requisitos, os casos de teste devem ser revisados tambm.
Vale lembrar que os nveis acima so utilizados para ajudar na priorizao dos casos de teste para execuo e, importante mencionar, que pode ser utilizada qualquer outra tcnica para chegar no mesmo resultado. Algumas vezes as prioridades acima no seguiro essa ordem pelo fato de um determinado risco ou funcionalidade no estar totalmente implementado e, nesse caso, deve-se rever a prioridade de execuo dos testes. Caso o tempo para o design no seja suficiente para criar todos os casos de teste sugeridos, deve-se seguir a prioridade acima. Toda e qualquer alterao na prioridade de execuo dos testes deve ser revisada com as partes interessadas.
A Matriz de Rastreabilidade de Requisitos deve ser atualizada caso acontea alguma alterao nos requisitos e todas as partes interessadas devem ser informadas.
Pgina 7
Teste de Software Por onde comear? Design e Execuo de Teste Servidor Web, internet Information Service Implementao Iterao Interdependncias Cenrio: Adicionar Contato Caso de Teste CT02-01 Adicionar um contato quando o nmero mximo de contatos na lista de contatos foi atingido Pr-condies Estar logado no sistema quando o nmero mximo de contatos na lista de contatos foi atingido. O usurio deve ter uma lista de contatos com o nmero mximo permitido (o nmero mximo de contatos permitido na lista 100). Ps-condies/Objetivo O usurio no capaz de adicionar um novo contato pois o nmero mximo de contatos na lista foi atingido. Uma mensagem de erro mostrada para o usurio informando o no sucesso da operao de acordo com o documento de Interface do usurio. Detalhamento O usurio digita o nome do contato. O usurio confirma a operao de adicionar contato. O sistema verifica se o nmero mximo de contatos j foi atingido na lista de contatos. O nmero mximo na lista de contatos atingido e o usurio no capaz de adicionar o novo contato. Uma mensagem de erro mostrada para o usurio informando o no sucesso da operao de acordo com o documento de Interface do usurio. Massa de entrada e de sada Critrios especiais Ambiente Entrada de nome do novo contato. No se aplicam Sistema operacional cliente Windows Vista. Navegador Internet Explorer 7.0 Servidor Web, internet Information Service Implementao Iterao Interdependncias Manual 1 iterao No se aplicam Manual 1 iterao No se aplicam
Neste caso, pode-se utilizar o caso de teste Caso de Teste CT01-01 como prcondio ou condio inicial do caso de teste Caso de Teste CT02-01, pois no caso de teste CT02-01, a pr-condio o usurio estar logado no sistema e ter uma lista com o nmero mximo de contatos permitido e, dessa forma, essa condio atingida pelo caso de teste CT01-01.
Pgina 8
Teste de Software Por onde comear? Design e Execuo de Teste Os procedimentos de teste devem ser documentados em uma especificao de procedimento de teste baseado no padro de especificao de procedimento de teste, como por exemplo, o padro IEEE829 1: Identificador da especificao de procedimento de teste; Propsito; Requisitos especiais (pr-condio ou condio inicial de execuo); Passos e Procedimentos (aes de teste, verificao/validao).
Aps a identificao dos procedimentos de teste deve-se revis-los com as partes interessadas. Em alguns casos os procedimentos de teste podem ser automatizados utilizando scripts automticos, mas vale lembrar que isso deve ser feito cuidadosamente, pois caso um script automtico seja criado errado, o caso de teste ir falhar por um problema que no est relacionado com o cdigo desenvolvido para o funcionamento do software e sim com o script automtico. Esse tipo de problema no deve ser considerado como um defeito encontrado na fase de cdigo.
Todo e qualquer impacto na execuo do teste deve ser revisada com as partes interessadas.
Pgina 9
03/jul/08 04/jul/08 05/jul/08 06/jul/08 07/jul/08 08/jul/08 09/jul/08 10/jul/08 11/jul/08 12/jul/08 13/jul/08
10 10 10 10
10 10 10 10 10
20 30 40 50 50 50 60 70 80 90 100
7 9 10
12 21 31 31 31 31 31 31 31 31 31
1 4 0
3 7 7 7 7 7 7 7 7 7 7
2 5 8
3 8 16 16 16 16 16 16 16 16 16
18 36 54 54 54 Sbado 54 Domingo 54 54 54 54 54
Tabela 1 Grfico Curva-S Para facilitar o entendimento da tabela acima, segue abaixo a descrio de cada coluna: Data: data de execuo planejada; Total planejado: nmero total de casos de teste planejado para execuo; Total planejado acumulativo: nmero total de casos de teste planejado acumulativo; Total Passado Planejado: nmero total de casos de teste passados no dia; Total Passado: nmero total de casos de teste passados acumulados; Total Falhado Planejado: nmero total de casos de teste falhados no dia; Total Falhado: nmero total de casos de teste falhados acumulados; Total Bloqueado Planejado: nmero total de casos de teste bloqueados no dia; Total Bloqueado: nmero total de casos de teste bloqueados acumulados; Total Atingido: nmero total de casos de teste executados at o momento somando, total passado, total falhado, total bloqueado; Comentrio Execuo: comentrios gerais do planejamento.
Aps a criao da tabela acima, basta gerar grfico incluindo os campos Data, Total Planejado Acumulativo, Total Passado, Total Falhado, Total Bloqueado, Total Atingido, como mostrado abaixo na Figura 1 Grfico Curva-S.
Pgina 10
Figura 1 Grfico Curva-S Aps a criao do Grfico Curva-s, obtm-se o nmero total de casos de teste que foram planejados para execuo incluindo os novos casos de teste, porcentagem de casos passados, falhados e bloqueados e casos de teste de regresso. Com isso possvel verificar se o planejamento feito anteriormente est de acordo com o atual, caso seja necessrio, um novo re-planejamento deve ser feito e as partes interessadas informadas. Vale lembrar que a criao dos ciclos de teste deve ser planejada de acordo com o progresso da execuo, estabilidade do software e critrio de sada. Quando o planejamento est concludo, chega a hora da execuo dos testes. Os casos de teste so executados manualmente usando os procedimentos documentados e/ou automticos do script de teste. Para que a fase de execuo de teste seja executada com sucesso deve-se: Executar os casos de teste usando o documento de procedimentos de teste e/ou scripts de teste; Registrar o resultado atual; Comparar o resultado atual com o resultado esperado; Se necessrio, repetir a execuo de um caso de teste quando um incidente encontrado, ou seja, devemos fazer o teste de confirmao; Executar testes de regresso como planejado.
Devido ao alto risco de mudana do cdigo entre a execuo de um ciclo e outro, devese ter uma poltica de re-teste bem definida utilizando a abordagem de teste de regresso definida anteriormente. Em alguns casos, testes podem ser executados informalmente procedimentos de teste detalhado, como por exemplo: teste exploratrio. sem usar
Para ajudar no entendimento de como chegamos aos relatrios acima, segue abaixo a Figura 2 Relao de documentos de teste para o processo de teste - IEEE 829.
D c m no d ou e t s o p o to r je Ite seo tr s n u o d c mn s / o u e to a t f t sd r ea o o po t r je o
P n d T se la o e e t
D s n oe ee h e p c ic o s e if a d ts o e te
D s n oe ee h e p c ic o s e if a d te t o se
D s n oe ee h e p c ic o s e if a d ts o e te
E p c ic o s e if a d sc s sd o ao e te te s
E p c ic od s s e if a o p o e im n od rcd et e t se et
E e u d ste t s x c o o se
L gd T s e o e et R la r d e t io e in id n sd c e te e te te s
L gd T s o e e te R la r d e t io e in id n e d c ets e ts e te
R la r d e t io e Smr d u io e Ts e te
Figura 2 Relao de documentos de teste para o processo de teste - IEEE 829 -1998
Pgina 12
Teste de Software Por onde comear? Design e Execuo de Teste Segundo a norma IEEE 829 o relatrio de log de teste deve ter as seguintes informaes: Identificador: identificador nico e especfico para o relatrio, por exemplo, o nome do sistema com nmero do release mais data e hora do teste; Descrio: identificar o que foi testado e o ambiente em que o teste foi executado incluindo hardware, quantidade de memria utilizada, etc; Atividades e eventos: para cada evento, identificar data/hora, tempo utilizado e responsvel; Descrio da execuo: descrever o que foi feito e identificar os responsveis pela atividade incluindo testadores, observadores e operadores; Resultados dos procedimentos: para cada execuo, descrever os resultados encontrados podendo ser sucesso ou no; Informaes sobre ambiente de teste: informar qualquer condio especfica do ambiente de teste, caso seja necessrio; Eventos imprevistos: descrever detalhadamente o que aconteceu antes e depois de uma atividade ou evento inesperado.
Vale lembrar que outras informaes podem ser includas sempre que necessrio.
Pgina 13
Teste de Software Por onde comear? Design e Execuo de Teste Vale lembrar que outras informaes podem ser includas sempre que necessrio e nem sempre todos os campos acima sero necessrios. Impacto: indicar qual o impacto que o incidente ter no plano de teste de execuo podendo falhar, bloquear o(s) testes(s) ou at mesmo uma possvel mudana no caso de teste ou requisitos. Se possvel, informar a prioridade e severidade do incidente.
Os incidentes de teste devem ser armazenados em um repositrio e, caso necessrio, revisar o relatrio de incidentes de teste com as partes interessadas.
Vale lembrar que outras informaes podem ser includas sempre que necessrio.
Pgina 14
Fluxo Principal Prximo Time Responsvel Estado Novo Teste / Desenvolvimento Anlise Desenvolvimento Anlise Desenvolvimento Completa Trabalhando Resolvido Desenvolvimento Desenvolvimento
Pgina 15
Estado Atual
Anlise Anlise Completa Trabalhando Parado Parado Parado Anlise Completa
Tabela 3 Mquina de estado para transio de defeitos Fluxo Alternativo Com a mquina de estado acima possvel acompanhar o status dos incidentes de teste durante todo o ciclo de vida de desenvolvimento de software.
1.4 Gerenciamento
dos
Incidentes
de
Teste
para
Encerramento
1.4.1 Decidir sobre os incidentes no bordo de controle de mudana
Todos os incidentes reportados/abertos pelo time de teste devem ser analisados previamente pelo time de desenvolvimento antes de comear a resolver o defeito. Muitas vezes um determinado incidente reportado por um testador pode ter a mesma causa raiz de outro incidente j reportado anteriormente por outro testador, nesses casos muito importante ter uma equipe ou desenvolvedores que participem do bordo de controle de mudana. O objetivo desse bordo fazer uma pr-anlise dos incidentes reportados para garantir que aquele determinado incidente realmente vlido. Abaixo esto algumas atividades que o borde de controle de mudana deve executar: Revisar e analisar os incidentes encontrados; Revisar a prioridade e severidade dos incidentes de teste; Decidir se o incidente no um defeito e neste caso ser rejeitado. Nesse caso, pode-se ter as seguintes causas para rejeitar um incidente: o o o Resultado reportado est de acordo com o desenvolvimento atual; Caso de teste precisa ser retrabalhado, pois o comportamento esperado no est de acordo com o atual; Requisito novo identificado e neste caso no foi desenvolvido. Para esse caso, o defeito rejeitado pelo time de desenvolvimento e dever ser encaminhado para o time de requisitos, o qual dever criar o novo requisito encontrado e assim, seguir com o ciclo de vida de desenvolvimento do projeto. Pgina 16
Decidir se o incidente pode ser duplicado para outro incidente encontrado anteriormente e tenha a mesma causa raiz; Incidente deve ser corrigido; Registrar a deciso tomada e outras informaes relevantes no incidente; Assinalar o incidente para o desenvolvedor responsvel pela correo do defeito.
Aps o resultado da pr-anlise dos incidentes, caso o defeito seja rejeitado, o testador que reportou o incidente deve concordar com a deciso e, caso no concorde, dever justificar o porqu no concorda com o resultado chegando a um acordo com o time de desenvolvimento. Se possvel, as partes interessadas da rea de teste tambm devem participar do bordo de controle de mudana, pois assim fica mais fcil a comunicao entre o time de desenvolvimento e teste.
Caso na hora de validar a correo um novo defeito seja encontrado, um novo incidente de teste deve ser reportado e assim entrar no ciclo de vida de correo de defeito.
Pgina 17
Teste de Software Por onde comear? Design e Execuo de Teste Em alguns casos a correo de um defeito reportado em um incidente de teste poder corrigir outro defeito reportado anteriormente por outro incidente no sendo a mesma causa raiz, neste caso no devemos duplic-lo e sim fech-lo. Toda e qualquer alterao, na prioridade da correo dos defeitos encontrados, dever ser informada as partes interessadas.
Pgina 18