Questão de Engenharia de Software — Conceitos e Tipos de Testes de Software — FCC 2025
Engenharia de Software›Conceitos e Tipos de Testes de Software
Código
fc150535
Banca
FCC
Órgão
SEFAZ PI
Ano
2025
Cargo
Ag Trib ( )
A equipe de TI de uma Secretaria da Fazenda Estadual pondera sobre aplicações de testes de software por três abordagens distintas, tais como:
I. Validar se o sistema atende aos requisitos e expectativas do usuário final. Esse teste é geralmente executado pelo cliente ou usuário final para garantir que o sistema está pronto para uso.
II. Verificar como o sistema se comporta sob condições extremas, como alta demanda de usuários ou grandes volumes de dados.
III. Garantir que alterações no código não introduzam novos defeitos em partes já testadas do sistema. Esse teste verifica se funcionalidades previamente testadas continuam funcionando após modificações.
Atendem, correta e respectivamente, às abordagens I, II e III os testes de
Aunidade, integração e segurança.
Bintegração, carga e unidade.
Caceitação, desempenho e integração.
Dcontrole, segurança e desempenho.
Eaceitação, carga e regressão.
Revelar gabarito e comentário▾
GabaritoE — aceitação, carga e regressão.
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”.
Testes de Software: Aceitação, Carga e Regressão
Gabarito: letra E. As três abordagens descritas correspondem, respectivamente, aos testes de aceitação (validar se o sistema atende aos requisitos e expectativas do usuário final), carga (verificar o comportamento sob condições extremas de demanda ou volume de dados) e regressão (garantir que alterações no código não introduzam novos defeitos em partes já testadas). Essa classificação é um dos pilares da Engenharia de Software, e a banca explora exatamente a distinção entre os diferentes tipos de teste.
Para entender a questão, é preciso separar dois eixos que costumam se confundir: os níveis de teste e os tipos de teste. Os níveis dizem respeito ao tamanho do que está sendo testado — unidade (um componente isolado), integração (a interação entre componentes), sistema (o software completo) e aceitação (a validação final pelo usuário). Já os tipos de teste descrevem o objetivo ou a característica que se quer verificar — funcionalidade, desempenho, carga, segurança, usabilidade, regressão, entre outros. A questão mistura os dois eixos propositalmente: a abordagem I é um nível (aceitação), enquanto II e III são tipos (carga e regressão).
O teste de aceitação é a etapa final do processo de validação, geralmente executada pelo cliente ou usuário final, em ambiente controlado ou real, para confirmar que o sistema está pronto para uso e atende às expectativas de negócio. Ele responde à pergunta: "estamos construindo o produto certo?". Já o teste de carga é um tipo de teste não funcional que submete o sistema a condições extremas — muitos usuários simultâneos, grandes volumes de dados, alta taxa de requisições — para verificar se ele mantém o desempenho esperado e identificar gargalos ou pontos de falha. Por fim, o teste de regressão consiste em reexecutar testes já realizados após uma modificação no código, para garantir que as mudanças não quebraram funcionalidades que antes funcionavam. É uma prática essencial em manutenção e evolução de software.
A pegadinha da banca está em trocar esses conceitos por outros próximos, mas distintos. Por exemplo, o teste de integração verifica a interação entre módulos, não a aceitação do usuário; o teste de desempenho mede a velocidade e a responsividade em condições normais, enquanto o de carga foca no comportamento sob estresse; e o teste de unidade testa componentes isolados, não a regressão de funcionalidades já testadas. Guarde a fronteira entre esses conceitos: é exatamente nela que as alternativas se dividem.
Abordagem
Descrição
Tipo de Teste
I
Validar se o sistema atende aos requisitos e expectativas do usuário final; executado pelo cliente/usuário final para garantir prontidão para uso
Aceitação
II
Verificar o comportamento do sistema sob condições extremas (alta demanda de usuários, grandes volumes de dados)
Carga
III
Garantir que alterações no código não introduzam novos defeitos em partes já testadas; verificar se funcionalidades previamente testadas continuam funcionando
Regressão
Testes de software
1Níveis (tamanho)
Unidade
Integração
Sistema
Aceitação
2Tipos (objetivo)
Funcionalidade
Desempenho
Carga
Segurança
Regressão
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
A sequência "unidade, integração e segurança" não corresponde às abordagens. O teste de unidade testa componentes isolados, não a validação com o usuário final; o de integração verifica a interação entre módulos, não o comportamento sob condições extremas; e o de segurança busca vulnerabilidades, não a garantia de que alterações não introduziram defeitos. A banca troca os três conceitos por outros que não se encaixam nas descrições.
Alternativa B — ❌ Incorreta
A sequência "integração, carga e unidade" também está errada. O teste de integração não valida requisitos com o usuário final; o de carga até corresponde à abordagem II, mas o de unidade não garante que alterações não introduziram defeitos em partes já testadas — esse é o papel do teste de regressão. A alternativa acerta apenas o segundo item.
Alternativa C — ❌ Incorreta
A sequência "aceitação, desempenho e integração" troca os dois últimos itens. O teste de aceitação corresponde corretamente à abordagem I, mas o de desempenho mede a velocidade em condições normais, não o comportamento sob condições extremas (isso é teste de carga); e o de integração verifica a interação entre módulos, não a regressão de funcionalidades já testadas. A banca confunde desempenho com carga e integração com regressão.
Alternativa D — ❌ Incorreta
A sequência "controle, segurança e desempenho" não corresponde a nenhuma das abordagens. Não existe um tipo de teste chamado "controle" nesse contexto; o de segurança busca vulnerabilidades, não a validação com o usuário; e o de desempenho mede a velocidade em condições normais, não o comportamento sob estresse. A alternativa é a mais distante das descrições.
Alternativa E — ✅ Correta ⟵ GABARITO
A sequência "aceitação, carga e regressão" corresponde exatamente às três abordagens. O teste de aceitação valida se o sistema atende aos requisitos e expectativas do usuário final, sendo executado pelo cliente para garantir que o sistema está pronto para uso (abordagem I). O teste de carga verifica o comportamento do sistema sob condições extremas, como alta demanda de usuários ou grandes volumes de dados (abordagem II). E o teste de regressão garante que alterações no código não introduzam novos defeitos em partes já testadas, verificando se funcionalidades previamente testadas continuam funcionando após modificações (abordagem III).
NÃO CAIA NESSA!
A banca adora trocar os tipos de teste entre si para confundir. Aqui, a armadilha está em confundir carga com desempenho (a carga é um caso específico de teste de desempenho, focado em condições extremas) e regressão com integração (a regressão reexecuta testes antigos após mudanças, enquanto a integração verifica a interação entre módulos). Na prova, leia a descrição com atenção e identifique a palavra-chave: "usuário final" → aceitação; "condições extremas" → carga; "alterações não introduzam novos defeitos" → regressão. Com treino, você enxerga essas trocas de longe 💪