Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 1/35
QUALIDADE E TESTEQUALIDADE E TESTE 
DE SOFTWAREDE SOFTWARE
Me. Roque Mait ino Neto
I N I C I A R
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 2/35
introdução
Introdução
Chegamos à terceira unidade do curso e teste de software continuará
merecendo nossa total atenção.  Depois de tratarmos de alguns
procedimentos em espécie na unidade anterior, chegou a hora de visitarmos
conceitos e práticas relacionadas a casos de teste, testes automatizados e
planejamento e controle dos projetos de teste.  O grau de importância que a
aplicação dos testes assume no processo de qualidade nos impele a conduzi-
la como a um projeto, com de�nição clara de etapas, aplicação rigorosa de
método e realização de resultados.
Contamos mais uma vez com sua leitura atenta do conteúdo teórico e sua
participação nas atividades propostas.  Aqui vamos nós!
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 3/35
Escrever um programa correto, com excelente usabilidade, e�ciente no uso
dos recursos computacionais e, além disso, com baixa incidência de defeitos é
atividade que se aproxima de uma produção artística.  É natural, portanto,
que todo esse nível de excelência requeira planejamento, adoção de método
e, por que não mencionar, disciplina dos envolvidos.
A despeito da corretude, da facilidade em seu usado e da e�ciência serem
fatores fundamentais a serem considerados na obtenção da qualidade
objetiva de um produto, a constante ocorrência de erros – aqui entendidos
em sentido amplo – deixariam a utilização do software perto de inviável.
Conforme tivemos a oportunidade de tratar na unidade anterior, a execução
de testes é uma das mais e�cientes providências para se garantir a qualidade
de um produto e evitar sua inviabilização.  Se olharmos, contudo, de modo
mais atento aos elementos que compõem o processo de teste, veremos que a
boa escolha e a correta aplicação dos casos de teste são essenciais para o
sucesso da empreitada.
Testes de SoftwareTestes de Software
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 4/35
Como forma de exempli�car o contexto em que se inserem os casos de teste,
mais uma vez você é chamado a imaginar uma situação comum em nosso
contexto pro�ssional: depois de algumas boas horas de trabalho, aquela
funcionalidade do seu programa está �nalmente pronta e você já pode testá-
la.  Como você desenvolveu o sistema, é até natural que teste as
funcionalidades com entradas conhecidas e seguras, de modo a obter
execuções perfeitas.
Bem, temos uma notícia boa e outra nem tanto: com as “entradas conhecidas
e seguras”, seu sistema vai funcionar muito bem.  O problema é que, com
elas, partes críticas e mais propensas à manifestação de um defeito correm o
risco de não serem exercitadas e, assim, seu teste não terá cumprido seu
objetivo.
As entradas mencionadas serão chamadas de casos de teste e – vale repetir –
sua correta escolha e aplicação serão fundamentais para o sucesso do
processo.
A despeito de já termos introduzido o assunto em nosso último encontro, ele
será retomado nesta unidade com a revisão de alguns conceitos e com a
apresentação de fatos novos.
Um caso de teste é composto, basicamente, por um ou mais dados de
entrada e a saída esperada, após terem sido processados pela função sob
teste.  A seleção destes elementos deve levar em consideração que, para a
maioria das funções, a quantidade de casos de teste plausíveis é in�nita ou
muito elevada.  Considere uma função que testa uma data: quantas variações
delas, com valores numéricos e alfanuméricos (sim, o programa deve também
prever a tentativa de se incluir letras e caracteres especiais) podem fazer
parte do conjunto de entradas?
Koscianski e Soares (2007) a�rmam que a quantidade de possibilidades a
serem veri�cadas e testadas em um sistema é bastante elevada, mas que,
idealmente, os testes devem abranger o maior número de situações
possíveis.  Na �gura 3.1 estão representadas as situações que tendem a
contribuir com a veri�cação da qualidade do programa.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 5/35
#PraCegoVer: Apresenta um retângulo azul, com pontas arredondadas à
esquerda, com o título superior centralizado contendo o texto: Entradas
Possíveis. Internamente esse mesmo retângulo possui uma elipse em tom
azul mais claro, com o texto: Entradas Corretas, descrito de forma
centralizada na elipse. O retângulo possui quatro setas direcionadas para a
direita apontando para um cubo azul, que possui a palavra Software em
branco, centralizada. À direita do cubo uma seta, em espessura mais grossa,
na cor azul-escuro apontando para a direita contendo o termo: Análise de
Resultados. 
 
Entre as escolhas envolvidas no processo, a decisão de quem irá selecionar os
casos de teste é frequentemente tão importante quanto a própria seleção
deles.  Conforme ilustrado no início deste tópico, deixar o desenvolvedor da
função (ou sistema) escolher seus próprios casos de teste pode não ser uma
boa ideia.
O autor não possui nenhuma motivação psicológica para inventar
casos de teste que demonstrem que seu produto está com falhas ou
errado [...]. Tratam seus programas como frágeis peças de porcelana
chinesa e fornecerão casos de teste que certamente não confundirão
os delicados mecanismos dentro do código (YOURDON, 1990, p.
530).
Entende-se, então, que o programador estará atacando sua própria criação se
conceber casos de teste capazes de violar a lógica que criou na programação
e revelar as falhas do seu programa.
Figura 3.1 – Diversi�cação de entradas para que o máximo possível de
situações sejam previstas. 
Fonte: Adaptado de KOSCIANSKI E SOARES (2007).
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 6/35
Antes de nos aprofundarmos nas boas práticas de criação e aplicação de
casos de teste, é necessária a abordagem de duas técnicas bastante
conhecidas e utilizadas de se testar programas.
Técnica de Teste Funcional
Esta técnica de teste baseia-se nas especi�cações do software para derivar os
requisitos de teste. O teste é realizado nas funções do programa, daí o nome
funcional. Não é seu objetivo veri�car como ocorrem internamente os
processamentos, mas se o algoritmo inserido produz os resultados esperados
(BARTIÉ, 2002).
Uma das vantagens dessa estratégia de teste é a ausência de necessidade de
conhecimento de detalhes da implementação do programa.  Sequer o código-
fonte é necessário. Esta característica, inclusive, fez com que esta técnica
também fosse conhecida como teste da caixa preta. Observe uma
representação dessa técnica na �gura 3.2:
#PraCegoVer: Apresenta à esquerda uma caixa de diálogo com o texto: Casos
de teste, apontando para um retângulo azul contendo um �uxo com
retângulos alinhados à direita com setas que direcionam o �uxo. O �uxo
começa com um retângulo que aponta para dois caminhos possíveis: um
acima e outro abaixo. O caminho superior apresenta dois retângulos em
sequência. O caminho abaixo apresenta um retângulo somente. Ambos os
caminhos apontam para um retângulo �nal que tem uma seta à sua direita
apontando para uma caixa de diálogo contendo a palavra Resultados ao
centro. 
 
Figura 3.2 - Representação do teste funcional 
Fonte: adaptado de BARTIÉ (2002, p. 105).
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 7/35
O planejamento do teste funcional envolve doispassos principais: (i) por meio
do documento de especi�cação de requisitos, identi�ca-se as funções que o
software deve realizar e (ii) cria-se casos de teste capazes de checar se essas
funções estão sendo executadas corretamente.
Tomemos como exemplo uma função que valida nomes de identi�cadores
numa linguagem de programação �ctícia. As condições para que o
identi�cador seja válido são: tamanho entre 1 e 8 caracteres, necessariamente
uma letra como primeiro caractere e proibição de caracteres especiais no
nome do identi�cador. A tabela 3.1 resume as condições de validade do
identi�cador e a aplicação do teste.
Tabela 3.1 - Resultado da aplicação da técnica funcional com os casos de teste
dados 
Fonte: Elaborado pelo autor.
#PraCegoVer: Apresenta uma tabela com uma linha de cabeçalho em azul
escuro, contendo três colunas: a primeira coluna com o texto: Condições de
entrada. A segunda coluna tem o texto: Critério válido e a terceira coluna tem
o texto: Critério inválido. 
 
As linhas seguintes alternam em tons de cinza claro e cinza mais escuro. 
 
Condições de entrada Critério válido Critério inválido
Quantidade de caracteres
(q)
(q>=1) e (q<=8) q>8
Letra como primeiro
caractere (l)
Sim Não
Só conter caracteres
válidos
Sim Não
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 8/35
Na segunda linha, em tom cinza mais escuro, temos como condição de
entrada: quantidade de caracteres(q), como critério válido a expressão: (q>=1)
e (q<=8) e na terceira coluna como critério inválido temos a expressão q>8. 
 
Na terceira linha, em tom cinza mais claro, temos como condição de entrada:
letras com o primeiro caractere(l), como critério válido a palavra: Sim, e na
terceira coluna como critério inválido temos a palavra Não. 
 
Na quarta linha, em tom cinza mais escuro, temos como condição de entrada:
só conter caracteres válidos; como critério válido a palavra: Sim; e na terceira
coluna como critério inválido temos a palavra Não. 
 
Um exemplo possível de conjuntos de casos de teste para este programa
seria:
T = {(a*1, inválido), (2x, inválido), (w-102, inválido), (c1b1C7d33, inválido)}
T = {(a1, válido), (2b12, inválido), (z12, válido), (a1b2C3d, válido)}
Com eles espera-se exercitar partes essenciais do programa.
Apesar da simplicidade da técnica e apesar de sua aplicação ser possível em
todos os programas cujas funções são conhecidas, não se pode deixar de
considerar uma verdade incontestável: é impossível garantir que partes
essenciais ou críticas do software serão executadas, mesmo com um bom
conjunto de casos de teste (MAITINO NETO, 2016).
Por este motivo, uma outra técnica, de aplicação ligeiramente mais complexa,
pode ser usada sob certas circunstâncias.
Técnica de Teste Estrutural
Os testes estruturais (ou de caixa branca) são assim conhecidos por se
basearem na arquitetura interna do programa. De posse do código-fonte (ou
do código-objeto) e, se for o caso, das estruturas de banco de dados, o
1
2
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_74631… 9/35
pro�ssional designado para a atividade submete o programa a uma
ferramenta automatizada de teste (MAITINO NETO, 2016).  Embora testes
automatizados sejam assunto para nosso próximo tópico, vale o
desenvolvimento de um exemplo que use automatização para ilustrar a
prática do teste de caixa branca.
A ferramenta de teste constrói uma representação de programa conhecida
como grafo de programa. No grafo, os nós equivalem a blocos indivisíveis, ou
seja, não existe desvio de �uxo do programa para o meio do bloco e, uma vez
que o primeiro comando do bloco é executado, os demais comandos também
o serão, de forma sequencial.  As arestas ou arcos representam o �uxo de
controle entre os nós. Observe o trecho de código a seguir, escrito em
linguagem C. Ele valida identi�cadores de acordo com os critérios dados no
exemplo de teste funcional que desenvolvemos. Os números à frente de cada
linha representam os nós do grafo que vem logo a seguir.  A �gura 3.3 exibe o
código.
#PraCegoVer: Apresenta um quadro, onde um código na linguagem C é
apresentado com comentários em cada linha, representado um algoritmo
para teste. 
 
/* 01 */ { 
/* 01 */ char achar; 
Figura 3.3 – Código em linguagem C submetido a teste. 
Fonte: DELAMARO (2004 p.25).
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 10/35
/* 01 */ int length, valid_id; 
/* 01 */ length = 0; 
/* 01 */printf (“identi�cador: ”); 
/* 01 */ achar = fgetc (stdin); 
/* 01 */ valid_id = valid_s(achar); 
/* 01 */ if (valid_id) 
/* 02 */ length = 1; 
/* 03 */ achar = fgetc (stdin); 
/* 04 */ while (achar != ‘\n’) 
/* 05 */ {
/* 05 */ if (!(valid_f(achar))) 
/* 06 */ valid_id = 0; 
/* 07 */ length++; 
/* 07 */ achar = fgetc (stdin); 
/* 07 */ }
/* 08 */ if (valid_id && (length >=1) && (length < 6) ) 
/* 09 */ printf (“Valido\n”); 
/* 10 */ else /* 10 */ printf (“Invalido\n”); 
/* 11 */ } 
 
A submissão do código à ferramenta de teste criará a representação vista na
�gura 3.4. Note que cada trecho identi�cado com um número no código é
reproduzido em um nó do grafo.
Figura 3.4 – Representação do código em forma de grafo. 
Fonte: DELAMARO (2004, p.26).
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 11/35
#PraCegoVer: Apresenta um quadro com a representação de um grafo, com
os nós numerados de um a onze, em bolas azuis ligadas por setas, dispostos
de cima para baixo. A seta que possui o número um possui uma seta
apontando para o número dois e outra seta, pela esquerda, apontando
também para a bola azul mais abaixo que possui o número três em seu
interior. A bola número dois tem uma seta apontando para a bola número
três. A bola de número três tem uma seta apontando para a bola número
quatro. A bola número quatro tem duas setas: uma apontando para a bola de
número cinco à sua esquerda, e outra seta apontando para a bola de número
oito, à sua direita ambas em um nível abaixo. A bola de número cinco tem
uma seta que aponta para a bola de número seis, disposta abaixo. Possui
outra seta que aponta para a bola de número sete, mais abaixo. A bola de
número sete, possui uma seta, à esquerda que aponta para a bola de número
quatro. A bola de número oito, à direita do número quatro, em nível inferior
possui duas setas: uma que aponta para a bola de número nove, à sua
esquerda e outra que aponta para a bola de número dez, à sua direita. Ambas
as bolas têm setas que apontam para a bola de número onze. 
 
Uma vez gerada esta representação, o responsável pelo procedimento deverá
inserir entradas no programa e veri�car quais caminhos, nós e arcos do grafo
foram exercitados por elas.  A efetividade do testador será medida, portanto,
pela sua capacidade de criar casos de teste aptos a exercitarem tantas partes
do programa quantas forem possíveis.
Um caminho simples, por exemplo, seria dado por (2,3,4,5,6,7). O caminho
completo é representado por (1,2,3,4,5,7,4,8,9,11).
Em nosso próximo item trataremos em detalhes da automação de testes e
dos testes automatizados.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 12/35
atividade
Atividade
Teste funcional é uma técnica utilizada para se projetarem casos de teste na qual
um programa ou sistema é considerado uma caixa-preta. Nesta técnica, os detalhes
de implementação não são considerados e o software é avaliado segundo o ponto
de vista do usuário.
FABBRI, Sandra et al. Introdução ao Teste de Software. 2.ed. Rio de Janeiro:
Elsevier, 2016.
Considerando as técnicas e os casos de teste, analise as a�rmações que seguem.
I.   O teste estrutural requer conhecimento da estruturado software e a posse do
seu código-fonte ou código-objeto.
II.  A seleção e aplicação de casos de teste só se justi�ca se a técnica aplicada for a
estrutural.
III. Recomenda-se que os casos de teste sejam selecionados pelo próprio
desenvolvedor do software.
IV. A aplicação do teste funcional é mais dispendiosa e complexa do que a aplicação
do estrutural.
É correto o que se a�rma em:
a) I, II e IVapenas.
b) IV apenas.
c) I e IV apenas.
d) I, II, III e IV.
e) I apenas
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 13/35
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 14/35
Numa das passagens mais interessantes do �lme O Jogo da Imitação
(Diamond Films, 2015), a equipe responsável por decifrar o código criado
pelos alemães para manterem em segredo suas mensagens durante a
Segunda Guerra Mundial descobre que, por serem geradas por uma máquina,
essas mensagens só poderiam ser decifradas por outra máquina.  Sob a
liderança de Alan Turing, a equipe cria então um artefato eletromecânico
capaz de decifrar os códigos gerados pela máquina Enigma e antecipa a vitória
dos aliados em alguns anos.
Numa adaptação bastante imediata ao contexto de teste de software, este
enredo provavelmente terminaria com a seguinte conclusão: para se testar
um software, nada melhor do que outro software.
As possibilidades ampliadas e a rapidez proporcionadas pelos testes
automatizados têm conquistado a preferência dos pro�ssionais de qualidade
e conferido con�abilidade ao processo.  Antes de tratarmos dos conceitos,
procedimentos e ferramentas envolvidas, vale uma distinção importante: a
expressão “testes automatizados” refere-se à aplicação de ferramentas que
Testes AutomatizadosTestes Automatizados
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 15/35
automatizam o teste do software, em oposição ao teste realizado
manualmente.  Por sua vez, “automação de testes” está relacionado à
automação de toda a série de procedimentos de teste, quais sejam
planejamento, criação de casos de teste, aplicação e análise de resultados.  A
automação de testes associa-se a aplicação de tecnologia para gerenciamento
dos testes.  Neste tópico nos interessam ambos.
Elementos de Testes Automatizados
Conforme introduzido, teste automatizado é aquele realizado por
ferramentas automatizadas, em detrimento da realização do teste manual.
 Em outras palavras, o teste automatizado é o processo de se testar um
produto de software de acordo com os padrões da organização, mas sem
veri�cações manuais.  No lugar delas, deve-se usar uma ferramenta
apropriada.
Os tipos de teste que podem ser automatizados incluem teste de interface de
usuário, teste funcional, teste de unidade e teste de integração, entre outros.  
A utilização de ferramentas em um processo que poderia ser manual deve,
por si só, é capaz de aumentar a percepção de con�ança. No entanto, as
vantagens dos testes automatizados vão além.  A melhora na qualidade do
processo global de teste e a redução de esforço e tempo do procedimento
também são argumentos certamente favoráveis a automação.
É natural, no entanto, que a gerência frequentemente deva ponderar o custo
que ela acarretará em comparação com o benefício da sua aplicação.  Este
custo, aliás, está diluído em algumas questões que a organização deve
considerar para a adoção dos testes automatizados, incluindo (AUTOMATED
Software Testing, 2017):
Encontrar e contratar especialistas em testes deste tipo.
Selecionar a melhor ferramenta para a atividade.
Desenvolver e implementar processos de testes automatizados, com
padrões próprios.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 16/35
Treinar a equipe no planejamento e execução dos testes
automatizados.
É bastante imediata a conclusão de que, em que pesem as vantagens que a
automação ofereça, alguns cuidados devem ser tomados para sua efetiva
adoção.  A sequência deste tópico nos reserva a abordagem da gerência de
testes, com ênfase para sua fase de planejamento.
Planejamento de Testes
Como toda atividade que requer procedimentos de�nidos para sua execução,
a aplicação de testes também requer planejamento, primeira etapa em
qualquer projeto.  Seu escopo deve prever a de�nição de quem executa os
testes, em que período o procedimento deve ser conduzido, com quais
recursos (ferramentas de teste e computadores, por exemplo) e qual será́ a
técnica utilizada (estrutural ou funcional, por exemplo).  É considerada
também parte importante do planejamento a de�nição dos casos de teste
que serão usados.
Como estamos tratando da inclusão de automação no procedimento, nossa
abordagem recairá sobre as ferramentas de planejamento de testes, aquelas
que auxiliam o processo de planejamento do trabalho, por meio da de�nição
de escopo, recursos, reuniões e demais atividades relacionadas. 
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 17/35
Elas também auxiliam no processo de documentação inicial, possibilitando a
geração de planejamentos padronizados e a elaboração de estimativas de
tempo e custos, além de dimensionar as equipes de acordo com o tempo
disponível (BARTIÉ, 2002, p. 186).
Uma ferramenta típica de planejamento também é capaz de facilitar a seleção
dos sistemas a serem testados prioritariamente, a depender da sua
criticidade e importância para a organização.  Esta funcionalidade permite
que a equipe direcione tempo e recurso de forma e�ciente, por meio da
análise de complexidade de cada produto a ser testado.
Idealmente, uma ferramenta de planejamento deve também oferecer o
recurso de geração de documentos que controlarão versões do teste e
manterão o histórico do procedimento e os resultados obtidos. 
reflitaRe�ita
Se é certo que um teste, por melhor que seja executado, não conseguirá assegurar que
o programa é 100% livre de defeitos, qual a indicação de que é chegado o momento de
interromper os testes? Pois é justamente durante o planejamento do teste que os
critérios de parada da atividade são de�nidos.
Fonte: MAITINO NETO (2016, p. 174).
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 18/35
Gerência de Testes
Se entendermos a expressão “gerência de testes” em sentido amplo, teremos
que o planejamento dos testes é apenas uma de suas etapas.  Por ser talvez a
mais importante delas, a destacamos no início deste tópico.  Nesta divisão,
contudo, serão abordados elementos que compõem o desa�o de se gerenciar
testes, com menção às funcionalidades que as ferramentas relacionadas
devem oferecer.
O efetivo gerenciamento dos testes pressupõe a execução e o controle das
atividades que �caram estabelecidas na fase de planejamento.
Nos próximos itens, quando tratarmos do planejamento, monitoramento e
controle dos projetos de teste, abordaremos em maior profundidade os
processos de gerenciamento dos testes. 
saiba mais
Saiba mais
Em ferramentas atuais de teste, o planejamento é apenas uma das suas
funcionalidades agregadas.  Para que você conheça uma das principais
ferramentas disponíveis, o nome e breve descrição dela será fornecida na
sequência.
TestFLO - Jira Test Management & QA Tool – trata-se de um add-on (ou
complemento) da JIRA que permite gerenciamento abrangente do processo de
teste, incluindo disponibilização de repositório reutilizável de casos de teste, o
que permite a rápida criação e o e�ciente reaproveitamento dos planejamentos
do teste.
Fonte: Elaborado pelo autor.
ACESSAR
https://www.softwaretestinghelp.com/15-best-test-management-tools-for-software-testers/22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 19/35
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 20/35
atividade
Atividade
Quando decide _________ os testes, a equipe de qualidade obtém, via de regra, maior
rapidez e con�abilidade no processo.  Há, no entanto, que se considerar algumas
particularidades inerentes a esta aplicação, incluindo a necessidade de contratação
de ___________ nesta prática, o custo de aquisição e implantação da ferramenta e o
treinamento da equipe. Já ____________ de qualquer procedimento de teste deve
prever quais pro�ssionais aplicarão o teste e em que período o processo deverá ser
concluído, entre outras decisões.
Fonte: Elaborado pelo autor.
Assinale a alternativa que contém os termos que corretamente completam as
lacunas do texto.
a) automatizar, especialistas, o planejamento.
b) delegar, usuários, o planejamento.
c) delegar, usuários, o planejamento.
d) terceirizar, especialistas, o fechamento.
e) automatizar, especialistas, a efetivação.
Feedback: A alternativa correta é a letra A. Alternativa A – De fato,
os termos colocados na alternativa completam corretamente as
lacunas da sentença. Alternativa B – Incorreta. A delegação dos testes
não torna, necessariamente, o processo mais rápido ou con�ável.
Também não são usuários que devem ser chamados apenas por se
tratar de um teste automatizado.Alternativa C – Incorreta. Auditores
são sujeitos presentes num processo de qualidade, mas a condução
técnica do procedimento exige outro tipo de pro�ssional.  O
planejamento, não o fechamento, deve prever quem executa os
testes e em que tempo.Alternativa D – Incorreta. A terceirização dos
testes não torna, necessariamente, o processo mais rápido ou
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 21/35
con�ável.  O planejamento, não o fechamento, deve prever quem
executa os testes e em que tempo.Alternativa E – Incorreta. O
planejamento, não a efetivação dos testes, deve prever quem executa
os testes e em que tempo.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 22/35
Como utilizamos o item anterior para apresentar conceitos e destacar a
importância do planejamento em um processo de teste de software, chegou o
momento de aprofundarmos o tratamento deste assunto com mais
informações relacionadas.  Esta nova abordagem prevê a apresentação de um
padrão internacional criado para modelar um conjunto de documentos úteis
a atividade de teste.  Este padrão, elevado a categoria de norma, leva o nome
de IEEE 829 e a parte dele que merecerá nossa atenção é a que trata do
Documento de Plano de Testes, ou Test Plan, como pode ser encontrado com
frequência na literatura.
Antes de nos debruçarmos sobre a norma, vale o resgate de um conceito
importante.  Um plano de teste é um documento detalhado que descreve a
estratégia de teste, seus objetivos, os recursos de mão de obra, ferramentas
computacionais e hardware necessários para teste, o cronograma da
atividade e a previsão de entregas.
A norma IEEE Std 829-2008, portanto, oferece padronização e facilita a criação
do documento de plano de testes. Sua estruturação prevê 8 passos para esta
Método de Planejamento deMétodo de Planejamento de
Projetos de Teste de SoftwareProjetos de Teste de Software
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 23/35
atividade e uma breve descrição de 6 deles é oferecida na sequência
(RUNGTA, 2018). 
1. Analisar o produto: qualquer que seja a técnica utilizada, não se
pode testar um produto sem informação alguma sobre ele.  É
necessário, portanto, que se conheça o produto tanto quanto
possível antes de submetê-lo a teste.  Imagine que sua missão seja a
de testar um internet banking. Você deve pesquisar os clientes e os
usuários �nais para conhecer suas necessidades e expectativas sobre
o produto. Questões como “quem usará o site?”, “para que ele é
usado?” devem ser respondidas com a maior precisão possível.
 Entrevistas com o cliente, com o projetista e com o desenvolvedor,
além de uma boa análise na documentação do produto podem
ajudar nesta tarefa.
2. Desenvolver a estratégia de teste: a estratégia de teste é um passo
crítico na criação de um plano de teste e geralmente é desenvolvida
pelo gerente do teste. Em resumo, a estratégia de�ne os objetivos do
projeto de teste e os meios para alcançá-los. A de�nição do escopo
do teste e a identi�cação do tipo do teste a ser aplicado são
estratégias que também devem ser previstas neste estágio do
planejamento.  Os componentes do sistema a serem testados
(hardware, software, middleware, etc.) são de�nidos como "no
escopo". Os componentes do sistema que não serão testados
também precisam ser claramente de�nidos como "fora do escopo".
 Em relação ao tipo de teste, decide-se neste momento se o teste
será de unidade, de integração ou de sistema, entre outros.
3. De�nir o objetivo do teste: aqui se estabelece o objetivo geral e o
que se pretende conseguir com a aplicação do teste. Duas etapas são
importantes neste contexto: (i) listar todos os recursos do software
(funcionalidade, desempenho, GUI etc.) que podem precisar ser
testados e (ii) de�nir o alvo ou o objetivo do teste com base nestas
características.  Um exemplo possível de objetivo do teste pode ser
expresso como “assegurar que todas as integrações entre módulos
estejam em perfeito funcionamento para que sejam submetidas ao
teste do cliente”.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 24/35
4. De�nir o critério de teste: dado que a aplicação de todos os casos
de teste possíveis pode não ser viável em um processo de teste, a
equipe deve ter claros os critérios de suspensão e de saída do teste.
O critério de suspensão deve especi�car em que ocasião (ou
ocasiões) o teste deve ser suspenso.  Se, por exemplo, a equipe
relatar que 40% dos casos de teste falharam, há que se suspender o
teste até que a equipe de desenvolvimento corrija todos os casos
com falha.  Já o critério de saída deve esclarecer as condições que
indicam a conclusão bem-sucedida de uma fase de teste. Os critérios
de saída são os resultados desejados do teste e são necessários
antes de prosseguir para a próxima fase de desenvolvimento.  
5. Planejar os recursos: o plano de recursos constitui um resumo
detalhado de todos os tipos de recursos necessários para concluir a
tarefa do projeto de teste. Deve-se, portanto, prever a utilização de
recursos humanos, de ferramentas de teste e de qualquer outro
equipamento necessário para se concluir o projeto.  Um meio
e�ciente de se estimar, por exemplo, recursos humanos, é
demonstrado na tabela 3.2.
6. Planejar o ambiente de testes: um ambiente de teste é uma
con�guração de software e hardware na qual a equipe de testes
executará os casos de teste. Idealmente, o ambiente de teste deve
ser con�gurado tal qual o ambiente real de negócios e de usuário.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 25/35
Quadro 3.2 – Estimativa dos recursos humanos no processo de planejamento dos
testes. 
Fonte: Adaptado de RUNGTA (2018).
#PraCegoVer: Apresenta uma tabela com uma linha de cabeçalho em azul
escuro, contendo duas colunas: a primeira coluna com a descrição: Membro.
A segunda coluna tem a descrição Tarefas. 
 
As linhas seguintes alternam em tons de cinza claro e cinza mais escuro. 
 
Na segunda linha, em tom cinza mais escuro, temos como Membro: Gerente
de teste e como tarefa a seguinte descrição:Responsável por gerenciar todo o
Membro Tarefas
Gerente de
teste
Responsável por gerenciar todo o projeto, de�nir
suas direções e providenciar os recursos
apropriados.
Testador
Responsável por executar os testes, registrar os
resultados e relatar os defeitos.  Pode ser um
membro da equipe ou um terceiro.
Desenvolvedor
no teste
Responsável por implementar os casos de teste.
Administrador
de teste
Deve criar o ambiente de testes e garantir que seus
ativos sejam gerenciados e mantidos.  Dá suporte
ao testador no uso do ambiente para execução dos
testes.
Membros de
SQA
Deve assumir o controle da garantia de qualidade e
veri�ca se o processo de teste está atendendo aos
requisitos especi�cados.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 26/35
projeto, de�nir suas direções e providenciar os recursos apropriados. 
 
Na terceira linha, em tom cinza mais claro, temos como Membro: Testador e
como tarefa a seguinte descrição: Responsável por executar os testes,
registrar os resultados e relatar os defeitos. Pode ser um membro da equipe
ou um terceiro. 
 
Na quarta linha, em tom cinza mais escuro, temos como Membro:
Desenvolvedor no teste e como tarefa a seguinte descrição: Responsável por
implementar os casos de teste. 
 
Na quinta linha, em tom cinza mais claro, temos como Membro:
Administrador de teste e como tarefa a seguinte descrição: Deve criar o
ambiente de testes e garantir que seus ativos sejam gerenciados e mantidos.
Dá suporte ao testador no uso do ambiente para execução dos testes. 
 
Na sexta linha, em tom cinza mais escuro, temos como Membro: Membros de
SQA e como tarefa a seguinte descrição: Deve assumir o controle da garantia
de qualidade e veri�ca se o processo de teste está atendendo aos requisitos
especi�cados. 
 
Assim foram apresentadas as linhas mestras da atividade de planejamento de
um projeto de teste.  No entanto, a empreitada requer também
monitoramento e controle durante sua execução e estas práticas serão
abordadas em nosso próximo item. 
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 27/35
atividade
Atividade
O plano de teste orienta nosso pensamento. É como um livro de regras, que precisa
ser seguido. Aspectos importantes [...] são documentados no plano de teste, para
que possam ser revisados pela Equipe de Gerenciamento e reutilizados para outros
projetos.
RUNGTA, Krishna. Learn Testing in 1 Day: De�nitive Guide to Learn Software
Testing for Beginners. Edição do Kindle, 2018.
De acordo com a norma IEEE 829, são atividades que fazem parte da etapa de
planejamento de um projeto de teste:
a) Revisão da especi�cação dos requisitos e de�nição dos objetivos do teste.
b) De�nição dos critérios de teste e análise do produto a ser testado.
c) Planejamento dos recursos e revisão da especi�cação dos requisitos.
d) De�nição dos critérios de teste e execução dos testes.
e) Análise do produto a ser testado e revisão da especi�cação dos requisitos.
Feedback: A alternativa correta é a letra B. Alternativa a – Incorreta.
A revisão da especi�cação de requisitos é feita, via de regra, em fase
anterior a de teste.Alternativa b – Correta.  De fato, durante o
planejamento, de�ne-se os critérios de teste e faz-se a análise do
produto que será testado.Alternativa c – Incorreta. A revisão da
especi�cação de requisitos é feita, via de regra, em fase anterior a de
teste.Alternativa d – Incorreta. A execução dos testes é feita em etapa
própria, após o planejamento.Alternativa e – Incorreta.  A revisão da
especi�cação de requisitos é feita, via de regra, em fase anterior a de
teste.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 28/35
Uma vez cumpridas todas as demandas da etapa de planejamento, os testes
então poderão ser executados.  É natural, então, que se deseje continuar
tratando o processo de teste como a um projeto, com método bem conhecido
e documentado.  Neste sentido, uma das formas de se controlar os resultados
dos testes se dá por meio do relatório de incidentes de teste.
Este relatório deve conter o registro de todos os defeitos, erros e quaisquer
outras discrepâncias encontradas pelos pro�ssionais durante o procedimento
de teste do software. Além de relatar os defeitos no software, o documento
também identi�ca e de�ne qualquer outro aspecto que impede o produto de
atingir os resultados esperados.
Incidente é, portanto, qualquer fato que faz com que o software em teste
apresente um comportamento diverso do esperado. Um incidente é resultado
de falha ou con�guração incorreta do ambiente de teste, de dados de teste
corrompidos ou inválidos, bem como previsões incorretas de resultados
esperados. Estes incidentes ocorrem no software devido aos vários erros
cometidos pelos testadores de software durante o teste do software. É
Monitoramento e Controle deMonitoramento e Controle de
Projetos de Teste de SoftwareProjetos de Teste de Software
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 29/35
somente quando a causa principal de algum problema está no software que
esses incidentes assumem a forma de defeitos, erros, falhas ou quaisquer
outras discrepâncias (ProfessionalQA.com, 2019)
Para garantir o funcionamento adequado e o desempenho esperado do
software, é vital que a equipe registre esses incidentes regularmente e tome
as devidas medidas preventivas. Portanto, para realizar isso, o Relatório de
Incidente de Teste é criado pela equipe de testadores de software após a
conclusão do teste de software.
Como parte importante do relatório de teste de software, o relatório de
incidente de teste classi�ca os vários incidentes que afetam o desempenho e
a funcionalidade do software e oferece detalhes e evidências de falhas de
teste. Ele mantém um registro dos inúmeros defeitos encontrados no
sistema, bem como ajuda a relatar, classi�car, atribuir e gerenciar a
descoberta de defeitos até a resolução �nal. Em suma, o objetivo principal
deste relatório é fornecer aos programadores, gerentes e outros informações
detalhadas sobre o comportamento observado do sistema e os defeitos
(ProfessionalQA.com, 2019).
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 30/35
atividade
Atividade
Em relação ao relatório de incidentes de teste, analise as a�rmações que seguem.
I.     Trata-se de um relatório no qual devem ser registrados falhas no ambiente de
teste, dados incorretos de teste e estimativas que se revelaram imprecisas.
II.    Sua conclusão se dá após a aplicação dos testes e sua elaboração �ca sob
responsabilidade dos testadores.
III.   O relatório deve conter a classi�cação dos problemas encontrados no projeto
do software sob teste.
É correto o que se a�rma em:
a) I, II e III.
b) I e II apenas.
c) I e III apenas.
d) II apenas.
e) I apenas.
Feedback: A alternativa correta é a letra B, pois apenas as
a�rmações I e II são corretas, conforme detalhado na
sequência..A�rmação I – Correta.  De fato, qualquer anomalia no
ambiente, nos dados de teste e nas estimativas previamente
realizadas devem compor o relatório.A�rmação II – Correta. Os
responsáveis por sua elaboração são os testadores e sua conclusão
se dá após o término do procedimento de teste.A�rmação III –
Incorreta. Os problemas encontrados no projeto de software são
relatados em outro momento e outro meio.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 31/35
indicações
Material Complementar
LIVRO
Automatização de Teste de Software com
Ferramentas de Software Livre
Editora: Elsevier
Autor: José Carlos Maldonadoet. al.
ISBN: 978-85-352-8872-8
Comentário: Lançado em 2018, este livro é mais uma
parte da obra de José Carlos Maldonado e Márcio
Eduardo Delamaro, entre outros.  Em seus 11 capítulos,
ele trata da automação do processo de qualidade de
forma ampla, com a abordagem de conceitos
relacionados e das várias ferramentas disponíveis para
os procedimentos automatizados.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 32/35
FILME
Firewall - Segurança em Risco
Ano: 2006
Comentário: Imagine-se como um especialista em
segurança de dados que projeta um sistema
instransponível de segurança e que, por causa da ação
de bandidos, precisa burlar sua própria criação.
 Embora adaptada para a estética do cinema, situação
semelhante pode muito bem acontecer.
T R A I L E R
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 33/35
conclusão
Conclusão
Atingimos o �nal da terceira unidade e uma conclusão possível a que
podemos chegar é que, se testar um software e assegurar sua con�abilidade
são ações tão importantes no contexto da qualidade, então vale mesmo a
pena despender esforços e recursos para (i) empreender método e padrão no
procedimento de teste com o objetivo de torná-lo um projeto e (ii)
automatizar todo o processo, cuidando para que a ferramenta certa seja
usada.
Tornar secundária a atividade de teste é, além de jogar com a sorte, o
caminho mais curto para perdas �nanceiras e de reputação no futuro. Como
pro�ssional bem preparado, você certamente não tomará este caminho.
Bom estudo.
referências
Referências Bibliográ�cas
AUTOMATED Software Testing: Interview Questions. Vibrant Publishers.
Disponível em www.vibrantpublishers.com. Acesso em 27 mar. 2019.
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 34/35
BARTIÉ, Alexandre. Garantia da Qualidade de Software: adquirindo
maturidade organizacional. Rio de Janeiro: Elsevier, 2002.
DELAMARO, Márcio Eduardo. Introdução ao teste de software. Rio de
Janeiro: Elsevier, 2004.
KOSCIANSKI, André; SOARES, Michel dos Santos. Qualidade de Software:
aprenda as metodologias e técnicas mais modernas para o desenvolvimento
de software. São Paulo: Novatec Editora, 2007.
MAITINO NETO, Roque. Engenharia de Software. Londrina: Editora e
Distribuidora Educacional S.A., 2016. 224 p.
RUNGTA, Krishna. Learn Testing in 1 Day: De�nitive Guide to Learn
Software Testing for Beginners. Edição do Kindle, 2018.
ProfessionalQA.com. Test Incident Report. Disponível em
http://www.professionalqa.com/test-incident-report. Acesso em 29 de mar. de
2019.
YOURDON, Edward. Análise Estruturada Moderna. Rio de Janeiro. Editora
Campus, 1990.
IMPRIMIR
http://www.professionalqa.com/test-incident-report
22/09/2021 21:19 Ead.br
https://fadergsead.blackboard.com/webapps/late-course_content_soap-BBLEARN/Controller?ACTION=OPEN_PLAYER&COURSE_ID=_7463… 35/35

Mais conteúdos dessa disciplina