Você está na página 1de 4

Lista de Exercícios Avaliativa II

1. Considere a função GCD a seguir, a qual deve retornar o máximo divisor comum de x e
y. A função tem um defeito, conforme mostrado no código. Responda as questões a
seguir:

a) Identifique um caso de teste que não executa o defeito.


b) Identifique um caso de teste que executa o defeito e gera uma falha.
c) Use o exemplo para explicar a diferença entre erro e falha. É possível um caso de teste que
gera um erro, mas não uma falha para este exemplo? Explique.

2. O que é uma região em um grafo de fluxo de controle?


3. Calcule a complexidade ciclomática para o grafo abaixo. Aplique as fórmulas
pertinentes.

4. Observe o GFC abaixo. Qual a complexidade ciclomática?


5. Conceitue:

- Teste de fumaça (smoke testing)


- Teste de regressão
- Teste funcional
- Teste de desempenho
- Teste de aceitação
- Teste alfa
- Teste beta
- Teste de carga
- Teste de estresse
- Teste de usabilidade
- Teste estrutural
- Teste de segurança

6. Analise as assertivas a seguir, que apresentam algumas características relacionadas ao


teste de software:

I. O desenvolvedor não pode testar a unidade por ele desenvolvida.


II. O teste da unidade verifica se ela funciona sem erros de maneira isolada.
III. Por unidade entende-se como sendo a menor porção de um projeto de software que pode
ser testado.
IV. É importante que o testador tenha o conhecimento detalhado dos requisitos da unidade
que será testada.

Quais pertencem ao teste unitário?


A) Apenas I e II.
B) Apenas I e III.
C) Apenas II e IV.
D) Apenas II, III e IV.
E) I, II, III e IV.

7. Considere as seguintes definições relacionadas a teste de software, com lacunas a


preencher, e assinale a alternativa que preencha corretamente as três definições,
considerando sua ordem.

1. O teste __________ verifica o comportamento individual de partes do código. Cada parte é


testada separadamente para garantir que ela esteja funcionando corretamente antes de ser
integrada ao resto do sistema.

2. O teste __________ verifica a conexão entre as diferentes partes do sistema. É realizado


depois que as partes foram testadas e corrigidas individualmente, e o objetivo é verificar se
elas funcionam corretamente juntas.

3. O teste __________ verifica se o software atende às expectativas do usuário em termos de


funcionalidades e recursos. Esse teste é realizado a partir da perspectiva do usuário, simulando
a interação com o software e verificando se ele produz resultados esperados. Pode ser
realizado manualmente ou com a ajuda de ferramentas de automação de testes.

A) alfa – beta – de regressão


B) alfa – funcional – de aceitação
C) de unidade – de integração – funcional
D) de unidade – beta – de aceitação
E) de regressão – de integração – funcional

8. O que é cenário de teste?

9. O Teste de software é parte de um processo mais amplo de Validação e Verificação


(V&V). As atividades de V, V & T compõem atividades caracterizadas como estáticas e
dinâmicas, cujo objetivo é avaliar os diferentes artefatos dos sistemas de software na
busca de identificação de erros. (SOMMERVILLE I. Engenharia de Software; 10ªed.
Porto São Paulo: Pearson, 2019. Adaptado.)

Considerando conceitos, técnicas e ferramentas de VV&T aplicados em sistemas tradicionais,


assim como aqueles aplicados em ambiente ágil, analise as afirmativas a seguir.

I. Os processos de verificação e validação estão preocupados em conferir se o software que


está sendo desenvolvido cumpre sua especificação e fornece a funcionalidade esperada pelos
clientes. Esse processo inicia-se logo que os requisitos de software são identificados e
permanecem por todos os estágios do ciclo de vida do sistema.

II. O teste de caminho básico é uma técnica de caixa-preta que permite que o projetista de
casos de teste derive uma medida da complexidade lógica de um projeto procedimental e a
use como guia para definir um conjunto-base de caminhos para a realização do teste.

III. A Análise do Valor Limite (AVL) é uma técnica de projeto de casos de teste que
complementa o particionamento de equivalência. Em vez de selecionar qualquer elemento de
uma classe de equivalência, a AVL conduz à seleção de casos de teste nas “bordas” da classe.
Em vez de focalizar somente nas condições de entradas, obtém casos de teste também a partir
do domínio de saída.

IV. O teste de cenário é uma abordagem importante no ambiente ágil para testar histórias. O
teste combina a compreensão do testador sobre o sistema, juntamente com o pensamento
crítico, para definir “testes” experimentais e focados, que podem ser executados em curtos
períodos de tempo e, em seguida, retroalimentados no processo de planejamento do teste.

Está correto o que se afirma apenas em:

A) I e II.
B) I e III.
C) I, II e IV.
D) II, III e IV.

10. Explique o funcionamento da técnica de teste caixa-preta: particionamento por


equivalência.
11. Explique o funcionamento da técnica de teste caixa-branca: grafo de fluxo de dados.
12. O que é qualidade de software?

13. O particionamento de equivalência é uma técnica de testes com base em requisitos


(também conhecida como caixa preta). Esta técnica é usada para reduzir o número de
casos de teste a um nível gerenciável, mantendo ainda uma cobertura razoável do teste.
Considere o seguinte problema:

Em sua empresa há um sistema de recursos humanos que processa pedidos de emprego com
base na idade de uma pessoa e que possui as seguintes regras de negócio:

• Pessoas menores de 16 anos não devem trabalhar


• Pessoas entre 16 e 60 anos podem trabalhar
• Pessoas com mais de 60 anos não podem trabalhar

Defina:

a) Classes de equivalência para o problema descrito (0,5).

Limite Inferior Limite Superior Saída

b) Casos de teste para cada classe (0,5).

Caso de Teste Entrada Saída esperada


C1
C2
C3

Você também pode gostar