Escolar Documentos
Profissional Documentos
Cultura Documentos
ASSISTENTE DE TECNOLOGIA
DA INFORMAÇÃO
Módulo 3
2
Você deve concordar que, embora isso ocorra às vezes, essa é uma
situação desconfortável.
3
Considerando que é quase impossível desenvolver um software sem
falhas, temos que a única alternativa para enfrentar este percalço é o teste
de software.
desenvolvimento
teste
4
Bem, talvez você esteja se perguntando “afinal para que serve mesmo um
teste de software?”.
homologação
Produção
5
Desenvolvimento: Ambiente para acesso ao sistema quando ele está na fase
de desenvolvimento. Esse ambiente é comumente usado pelos
desenvolvedores para terem uma visão de como está ficando o resultado
da programação, mas também pode ser usado pelos testadores.
Fonte: http://pt.wikipedia.org/wiki/Qualidade_de_Software
6
Não raro, percorremos o caminho da busca por qualidade, seja em
aquisições de grande ou pequeno porte. Basta imaginar os
eletrodomésticos, como uma geladeira que geralmente não dá defeitos, é
extremamente valorizada; enquanto outra que sempre dá alguma
manutenção, é descartada o mais breve possível.
portabilidade confiabilidade
manutenibilidade usabilidade
eficiência
7
qualidade interna
e externa
Segundo estudos, quanto mais rápido corrigir uma falha, menor será o custo. O gráfico
apresentado tem como objetivo mostrar a proporção do aumento, observe
que na fase de requisitos, o custo para correção é praticamente zero. Já
quando o software está em produção, estima-se que o custo aumente em
100 mil vezes.
$
Sistema
$ 100.000 Rodando
d e a c e itação
$ 10.000 e
test do usuário
$ 1.000 testteemdea
sis
t e d e
$ 100 g r a m a n d o treosgramação
pro p
$ 101
$ requisito
11
A Psicologia do Teste
Quando um código é testado por uma pessoa que não teve influência do
desenvolvedor, há um grau de independência, o que pode representar uma
forma eficiente de encontrar defeitos e falhas. Vale a pena lembrar que
independência não é substituição. Os desenvolvedores também podem
encontrar defeitos no código.
1. Definir Meta; b
a 1
2. Definir Método; 7
3. Educar e Treinar; 2
4. Executar;
5. Coletar Dados; 3
6. Checar; 6 4
7. Ação: corretiva, preventiva, melhoria. 5
d
c
• Planejamento e controle;
• Análise e modelagem;
• Implementação e execução;
• Avaliação de critérios de saída e relatórios;
14
• Atividade de encerramento dos testes.
• Melhoria/Corretiva/Preventiva.
Os testadores devem
O testador é inimigo
ser os desenvolvedores
do desenvolvedor.
menos qualificados.
Um programador
O sistema está pronto
consegue testar
quando o desenvolvedor
eficientemente o
termina de codificar.
próprio código.
Nesse contexto ressalto o fato de que o testador não deve ser também o
desenvolvedor. É muito importante que a pessoa a testar, não seja a
mesma que programou. Para evitar vícios de execução e assim ter um
teste mais puro, que de fato simule o uso na ponta final.
testador desenvolvedor
Uma estratégia para testes de software pode ser vista no contexto da espiral mostrada na
figura a seguir:
Teste de Integração
Teste de Validação
Teste do Sistema
Teste de Unidade
Código
Projeto
Requisitos
Engenharia do Sistema
16
O teste inicia no centro da espiral e vai passando por cada componente, ou
seja, trechos de código fonte do software. O teste vai se movendo para
fora, ao longo da espiral, seguindo para o teste de integração, que foca no
projeto e na construção da arquitetura do software.
A base para o teste é o teste de caixa branca. Esse teste é planejado para
descoberta de erros devido ao fluxo impróprio de controle, comparações
incorretas e computações errôneas.
Tem esse nome pois é a junção do teste branco com o teste preto. Avalia
tanto os aspectos internos quanto os externos, de entrada e saída. Pode
utilizar-se de engenharia reversa;
especificação teste de
do sistema sistema
desenho do teste de
sistema integração
desenho do teste
componente unitário
codificação
Perfil do Testador
a b
Testar um software pode ser comparado a um jogo de 7 erros, em que você tem o software
desenvolvido de um lado e o escopo do projeto que contém os objetivos do outro.
Explicação:
A presente atividade visa permitir que você perceba que para identificar
erros, mesmo em um quadro simples, requer bastante concentração e
disposição. Localizar erros em software, devido a sua proporção, demanda
ainda mais concentração, disposição, criatividade e detalhamento.
21
SÍNTESE DO MÓDULO
No módulo 3 você estudou sobre ferramentas que te permitiram entender como ocorre um teste
manual de software.
Glossário
B
Bug: é um jargão da informática que se refere às temidas falhas inesperadas
que ocorrem ao executar algum software ou usar um hardware.
C
Checklist: é uma lista de itens que foi previamente estabelecida para
certificar as condições de um serviço, produto, processo ou qualquer outra
tarefa.
I
ISO: A sigla ISO denomina a International Organization for Standardization,
ou seja, Organização Internacional de Padronização. Em outras palavras, é
um meio de promover a normalização de produtos e serviços, utilizando
determinadas normas para que a qualidade seja melhorada.
S
Softwares: É uma sequência de instruções escritas para serem interpretadas
por um computador com o objetivo de executar tarefas específicas.
LAGES, Daniel Scaldaferri. Automação dos Testes: um lobo na pele de cordeiro? In:
Engenharia de Software Magazine, edição 29, 2010.