Introdução
- Descrever a finalidade do sistema, ou seja, para que serve.
- Destacar os nomes dos softwares disponíveis no mercado
- Escolher um para detalhar
- Explicar o motivo da escolha
A tarefa de efetuar testes em software foi considerada secundária por muito tempo. Era vista como um castigo para o programador, um trabalho tedioso e cansativo, uma tarefa onde não se deveria gastar muito tempo e investimentos. O tema esteve em segundo plano e até alguns anos atrás não se encontrava muitos documentos sobre o assunto. Agora mudou um pouco, com a globalização e o acirramento da competição entre as empresas de software esta havendo uma grande preocupação em aprimorar e aperfeiçoar os processos de testes em desenvolvimento de software com metas a reduzir custos com manutenção e em produzir um produto de melhor qualidade.
Mas a necessidade de garantir a qualidade dos produtos eletrônicos deflagrou a mais recente onda de contratações no setor de terceirização, que movimenta US$ 16 bilhões por ano e já emprega cerca de 500 mil pessoas na capital tecnológica indiana. Por muito tempo, empresas grandes como a Microsoft realizavam seus testes por conta própria. Mas os analistas dizem que especialistas independentes vêm sendo cada vez mais procurados para garantir a neutralidade do processo e manter os custos sob controle. E hoje em dia existem cursos para pessoas q queiram saber como fazer testes.
É de conhecimento geral entre os analistas de software que nunca se elimina o último bug de um programa, espera-se eliminar todos, um por um, mas nunca consegue se livrar deles.
Importante diferenciar Teste e depuração: Teste: mostrar que o software tem erros. Depuração: encontrar a causa do erro detectado no teste, e projetar e implementar as modificações no programa para correção do erro.
- Vantagens do uso de ferramentas CASE
- Qualidade no produto final;
- Produtividade;
- Agilizar o tempo para tomada de decisão;
- Menor quantidade de códigos de programação;
- Melhoria e redução de custos na manutenção;
Teste Estrutural (Caixa Branca): são testados os caminhos lógicos através do software, fornecendo casos de teste que põem a prova conjuntos específicos de condições e/ou garante que todos os caminhos independentes dentro de um módulo tenham sido exercitados pelo menos uma vez.
- Executa todas as decisões lógicas para valores falsos ou verdadeiros.
- Executa todos os laços em suas fronteiras.
- Exercita as estruturas de dados internas.
Teste funcional (caixa preta): são usados para demonstrar que as funções dos softwares são operacionais, que a entrada é adequadamente aceita e a saída é corretamente produzida; que a integridade das informações externas é mantida. Atividade complementar aos testes de caixa branca, com a finalidade de descobrir tipos/classes de erros. Procura descobrir erro em: Funções incorretas ou ausentes;
- Erros de interface
- Erros nas estruturas de dados
- Acesso a bancos de dados externos
- Erros de desempenho
- Erro de inicialização e término
Teste de Unidade:
- Deve ser escrito pelo mesmo programador que desenvolveu o código a ser testado
- Serve como documentação do sistema
- Essencial para análise de desempenho
Teste de Sistema:
- Comparar o sistema com seus objetivos originais
- Enfatizar a análise do comportamento da estrutura hierárquica de chamadas de módulos
- Fase mais complexa, devido à quantidade de informações envolvidas
Teste de Regressão:
- Teste necessário para assegurar que modificações no programa não causaram novos erros
- Baseado em arquivo de 'log'
Teste de Aceitação:
- A validação é bem sucedida quando o software funciona de uma maneira razoavelmente esperada pelo cliente . Pressman , 1995
- Expectativas dos clientes documentadas
- Uso da documentação do usuário.
ref:
http://www.macoratti.net/tst_sw1.htm
http://informatica.terra.com.br/interna/0,,OI501471-EI553,00.html
Funcionalidades
Descrever as funções do software, ou seja, detalhes do que ele faz.
Exemplo:
- Funcionalidades do Word:
- Edição de documentos
- Formatação de parágrafos
- Contagem de palavras
- Verificação gramatical
- Numeração de páginas
- Divisão em colunas
- Exportação para PDF
- Procura e alteração de palavras
- Etc
Benefícios
- Para quem usa, quais as vantagens que terá em usar
- O que a pessoa/profissional pode ganhar usando esta ferramenta
Interface gráfica
- Inserir uma imagem da interface gráfica do software.
Custos
- Se software pago: tentar descobrir valor de aquisição
- Se free: em que condições é fornecido [licença GPL, BSD, ...]
Fornecedor
- Que empresa desenvolveu o software?
Sistema Operacional
- Roda em quais sistemas operacionais?