Questão de Engenharia de Software — Teste de Software — FCC 2015
Engenharia de Software›Teste de Software
Código
fc018266
Banca
FCC
Órgão
CNMP
Ano
2015
Nível
Superior
Cargo
Analista do - Tecnologia de Informação e Comunicação Desenvolvimento de Sistemas
Testes de software buscam por erros ou anomalias em requisitos funcionais e não funcionais. É INCORRETO afirmar que o teste de unidade
Aexercita todos os caminhos básicos ao longo da estrutura de controle para garantir que todos os comandos do módulo/componente tenham sido executados pelo menos uma vez.
Btesta a interface do módulo/componente para garantir que a informação flua adequadamente para dentro e para fora da unidade de programa que está sendo testada.
Cautomatizado tem 3 partes: configuração, que inicia o módulo/componente com o caso de teste e dados de entrada; comparação, que compara o teste ao resultado esperado e correção, que corrige automaticamente os erros.
Dtesta as condições-limite para garantir que o componente/módulo opere adequadamente nos limiares conhecidos para limitar ou restringir o processamento.
Epossui como uma tarefa essencial o teste seletivo de caminhos de execução. Casos de teste devem ser projetados para descobrir erros devidos a cálculos errados, comparações incorretas ou fluxo de controle inadequado.
Revelar gabarito e comentário▾
GabaritoC — automatizado tem 3 partes: configuração, que inicia o módulo/componente com o caso de teste e dados de entrada; comparação, que compara o teste ao resultado esperado e correção, que corrige automaticamente os erros.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Teste de unidade: conceitos e automação
Gabarito: letra C. A questão pede a afirmativa INCORRETA sobre teste de unidade. A alternativa C descreve um processo automatizado com três partes (configuração, comparação e correção), o que está errado porque a correção não é uma etapa do teste automatizado – ela é atividade manual ou de depuração. As demais alternativas estão corretas conforme a literatura clássica de teste de software (Pressman, Myers).
A banca testa o conhecimento sobre as características do teste de unidade, que é o primeiro nível de teste, focado em componentes individuais (módulos, classes, métodos). As alternativas A, B, D e E descrevem corretamente práticas desse nível. A pegadinha está na letra C, que mistura um conceito de automação com uma etapa inexistente.
Alternativa
Afirmativa sobre Teste de Unidade
Correto/Incorreto
Motivo
A
Exercita todos os caminhos básicos da estrutura de controle para garantir que todos os comandos do módulo sejam executados ao menos uma vez.
✅ Correta
Descreve cobertura de caminhos (path coverage) do teste estrutural (caixa-branca), técnica comum no teste unitário.
B
Testa a interface do módulo para garantir que a informação flua adequadamente para dentro e para fora da unidade.
✅ Correta
É uma tarefa clássica: verificar parâmetros de entrada/saída, tipos e valores.
C
Automatizado tem 3 partes: configuração, comparação e correção.
❌ Incorreta (Gabarito)
O ciclo típico é configuração → execução → verificação → desmontagem. A etapa de "correção" não existe no teste automatizado; corrigir é atividade manual de depuração.
D
Testa condições-limite para garantir que o componente opere adequadamente nos limiares de processamento.
✅ Correta
É prática comum, especialmente em análise de valor limite (boundary testing).
E
Possui como tarefa essencial o teste seletivo de caminhos de execução para descobrir erros de cálculos, comparações ou fluxo de controle.
✅ Correta
Descreve corretamente o teste de caminhos (path testing) no teste de unidade.
Teste de unidade: Técnicas (Caixa-branca (caminhos), Caixa-preta (limites), Interface (fluxo de dados)); Automação (Configuração (setup), Execução, Verificação (assert), Desmontagem (teardown)); Correção automática
Alternativa A — ✅ Correta
Afirma que o teste de unidade exercita todos os caminhos básicos da estrutura de controle para garantir que todos os comandos do módulo sejam executados ao menos uma vez. Isso descreve a cobertura de caminhos (path coverage) do teste estrutural (caixa-branca), uma técnica comum no teste unitário. Está correta.
Alternativa B — ✅ Correta
Diz que o teste de unidade testa a interface do módulo para assegurar que a informação flua adequadamente para dentro e para fora da unidade. Essa é uma das tarefas clássicas: verificar parâmetros de entrada/saída, tipos, valores, etc. Correta.
Alternativa C — ❌ Incorreta ⟵ GABARITO
Afirma que o teste de unidade automatizado tem 3 partes: configuração (setup), comparação (assert) e correção. Na realidade, o ciclo típico de um teste automatizado é: configuração → execução → verificação → desmontagem (teardown). A etapa de correção não existe no teste automatizado; corrigir o código é atividade do desenvolvedor após identificar a falha. Portanto, a afirmação é falsa.
Alternativa D — ✅ Correta
Afirma que o teste de unidade testa condições-limite (boundary testing) para garantir que o componente opere adequadamente nos limiares de processamento. Isso é uma prática comum, especialmente em análise de valor limite. Correta.
Alternativa E — ✅ Correta
Afirma que uma tarefa essencial é o teste seletivo de caminhos de execução, projetando casos para descobrir erros de cálculos, comparações ou fluxo de controle. Isso descreve o teste estrutural (caixa-branca) aplicado a unidades, como cobertura de caminhos e decisões. Correta.
NÃO CAIA NESSA!
A banca explora o conhecimento do processo de automação de testes. Muitos candidatos aceitam a ideia de que o teste automatizado inclui correção, mas isso é falso. O ciclo padrão é: preparar o ambiente (setup), executar o teste, verificar o resultado (assert) e limpar (teardown). Correção é feita à parte, manualmente.
Gabarito: letra C – a única afirmativa incorreta sobre teste de unidade.