Buscar

Lista de Exercícios 1 Teste de Software

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS EXERCÍCIOS SOBRE TESTE DE SOFTWARE
Instituto de Informática — Sistemas de Informação Disciplina: Fundamentos de Teste de Software Professora: Priscila Souza
O exercício é individual e deverá ser entregue a professora. Data de Entrega: 08/03/2017
1º Lista de Exercícios
O que é teste de software?
Teste de software é a atividade de testar um programa com o objetivo de encontrar falhas não descobertas anteriormente.
Qual a importância dos testes de software?
Quando um software passar por um processo de testes as chances de serem encontradas falhas são muito maiores. Quando essas falhas são corrigidas a qualidade do software produzido aumenta e sua confiabilidade também.
O que é um teste bem-sucedido?
Teste bem-sucedido é o teste que revela uma falha que não ainda não tinha sido descoberta.
Defina:
Defeito
É a manifestação de um erro no software. Uma anomalia que provoca um comportamento inesperado do software.
Erro
Provocado pela ação humana em qualquer etapa do desenvolvimento do software.
Falha
Falhas são causadas por defeitos, alguns defeitos não geram falhas. Falha é todo comportamento inesperado/inapropriado do software. 
O que são testes exaustivos?
Testes exaustivos são impossíveis. São muito custosos e demandariam muito tempo. É praticamente impossível testar todas as possibilidades de entrada e saída de um software, a não ser que seja muito simples.
Qual a diferença entre teste caixa-preta e caixa-branca?
Caixa-preta: teste funcional. Avalia se um requisito do software foi atendido, avalia apenas o que o sistema faz e não como.
Caixa-branca: teste do código fonte do programa. Avalia se todas as linhas do código foram executadas pelo menos uma vez, também avalia condições logicas, fluxo de dados, laços, etc.
Cite pelo menos 3 tipos de teste diferentes que visam verificar ou validar requisitos não funcionais de software. Explique como cada um funciona.
Teste não-funcional: testa a usabilidade, performance, segurança, confiabilidade, etc. Um exemplo é um teste de carga que determinará se o sistema suporta um número de X usuários simultâneos.
Teste de confirmação: também conhecido como reteste. Executa casos de testes que foram reprovados anteriormente para garantir que os erros foram corrigidos.
	Teste de mudanças: executa testes que foram aprovados anteriormente com o objetivo de descobrir se a correção de erros criou novos bugs.
Diferencie Teste x Depuração.
Teste: são os responsáveis por encontrar falhas.
Depuração: é o processo responsável por encontrar e corrigir os defeitos que estão causando as falhas. Algumas falhas levam muito tempo para serem depuradas.
Compare Validação x Verificação.
Validação: conjunto de atividades que garante que o software construído atende os requisitos do cliente. O produto construído é o correto?
Verificação: conjunto de atividades que garante que o software implementa uma função especifica. O produto é construído corretamente?
Comente resumidamente sobre os níveis de testes.
Existem diferentes níveis de testes que são aplicados em diferentes etapas do processo de desenvolvimento de software. Os testes avaliam o código-fonte, os requisitos do software, a integração, etc. São feitos por desenvolvedores, testadores e, às vezes, também pelo cliente.
Quando sabemos que é hora de parar de testar?
Quando já se está no nível de testes de sistema. O software já passou por testes de unidade e de integração e agora, na última fase testes, nenhum erro catastrófico que impeça o usuário final de utilizar o sistema é encontrado.
Quando é necessário realizar o teste de Regressão?
Quando algum erro encontrado é corrigido. São necessários para garantir que a correção de erros não gere ou propague novos erros.
O que são testes de aceitação?
São testes feitos pelos usuários e/ou clientes. São feitos por longas horas sob condições reais de uso do software. O objetivo não é encontrar erros, mas sim avaliar se as expectativas dos usuários foram atendidas. Os testes são baseados nos requisitos do sistemas e no manual de usuário. 
Qual a diferença entre Teste Alfa e Beta?
Teste alfa: testes feitos no ambiente do desenvolvedor e usuários são convidados para testarem o sistema.
Teste beta: testes feitos com usuários em condições reais não controladas pelos desenvolvedores.
Em relação à infraestrutura para testes, o que é um driver e o que é um stub?
Driver: também conhecido como pseudocontrolador. É o programa principal que aceita os dados do caso de teste e os repassa à unidade que está sendo testada.
Stub: também conhecido como peseudocontrolado. Substitui uma unidade subordinada ao componente que está sendo testado.
É correto afirmar que os testes garantem ausência de erros?
Não. Testes garantem que alguns erros sejam encontrados, geralmente erros críticos. Por conta de prazo e custo erros mais simples nem sempre são consertados. Além disso, se um teste não encontra erros isso não garante que não existem erros.
O número em um sistema de controle de estoque pode variar entre 10.000 e 99.999 inclusive. Quais das seguintes entradas poderiam ser o resultado da modelagem de teste usando apenas classes de equivalências válidas e limites válidos?
A. 1.000, 5.000, 99.999
B. 9.999, 50.000, 100.000
C. 10.000, 50.000, 99.999
D. 10.000, 99.999
E. 9.999, 10.000, 50.000, 99.999, 100.000
O custo de se corrigir um defeito:
aumenta à medida que caminhamos na direção de entregar o produto.
decresce à medida que caminhamos na direção de entregar o produto.
é maior se encontrado nos requisitos do que no projeto funcional do produto.
nunca pode ser determinado.

Continue navegando