Pular para o conteúdo principal

Questão de Engenharia de Software — Teste de Software — INSTITUTO AOCP 2025

Engenharia de SoftwareTeste de Software
Código
qg543514
Banca
INSTITUTO AOCP
Órgão
TRE-TO
Ano
2025
Nível
Superior
Cargo
Analista Judiciário - Área de Atividade: Apoio Especializado - Especialidade: Tecnologia da Informação
Determinado órgão de atendimento ao público precisou passar o seu sistema por testes funcionais, os quais mostraram resultados bem-sucedidos, a princípio, mas, durante o uso real em dias de pico, o sistema apresentou lentidão extrema e falhas de conexão. A equipe de qualidade decidiu, então, aplicar testes específicos para avaliar o comportamento do sistema sob condições adversas. A respeito dos testes considerados pela equipe, com base nas práticas de engenharia de software voltadas à qualidade e nos testes de requisitos não funcionais, assinale a alternativa correta.
  1. ATestes de carga simulam volumes reais ou crescentes de usuários e transações, enquanto testes de estresse extrapolam os limites do sistema para avaliar seu comportamento em condições extremas.
  2. BO teste de carga busca provocar falhas no sistema ao exceder intencionalmente os limites operacionais definidos em requisitos funcionais.
  3. CTestes de carga e estresse são tipos de validação informal e não se aplicam a sistemas que já passaram por testes funcionais completos.
  4. DO teste de estresse avalia a usabilidade da interface do sistema em situações de interação simultânea por múltiplos usuários.
  5. ETestes de requisitos não funcionais são focados apenas em desempenho e não consideram atributos como segurança, confiabilidade ou escalabilidade.
Revelar gabarito e comentário

GabaritoA — Testes de carga simulam volumes reais ou crescentes de usuários e transações, enquanto testes de estresse extrapolam os limites do sistema para avaliar seu comportamento em condições extremas.

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 carga e estresse: avaliando o comportamento sob condições adversas

Gabarito: letra A. O teste de carga simula volumes realistas ou crescentes de usuários e transações para verificar se o sistema atende aos requisitos de desempenho, enquanto o teste de estresse submete o sistema a condições extremas, além dos limites operacionais, para avaliar sua robustez e comportamento sob pressão. Essa distinção é o núcleo da questão, que cobra a compreensão dos testes de requisitos não funcionais.

Os testes funcionais, como o próprio nome indica, verificam se as funcionalidades do sistema estão corretas, ou seja, se ele faz o que deveria fazer. No entanto, eles não avaliam como o sistema se comporta em termos de desempenho, segurança, usabilidade, entre outros atributos. Esses atributos são chamados de requisitos não funcionais, e são testados por uma família específica de testes, que inclui os testes de carga, estresse, volume, desempenho, segurança, entre outros.

O teste de carga (ou teste de performance) tem como objetivo verificar se o sistema consegue operar dentro dos níveis esperados de desempenho (tempo de resposta, throughput, utilização de recursos) quando submetido a uma carga de trabalho realista ou crescente. Por exemplo, simular 1.000 usuários simultâneos acessando o sistema em horário de pico, como no caso do órgão de atendimento ao público. O teste de carga busca identificar gargalos de desempenho, como lentidão ou falhas de conexão, que só aparecem sob demanda elevada.

O teste de estresse, por sua vez, vai além: ele submete o sistema a condições extremas, excedendo os limites operacionais especificados, para avaliar como o sistema se comporta sob pressão. O objetivo é descobrir o ponto de ruptura do sistema, identificar como ele falha (se degrada gradualmente, se trava, se perde dados) e verificar se ele se recupera adequadamente após a falha. Por exemplo, simular 10.000 usuários simultâneos em um sistema projetado para 1.000, ou aumentar drasticamente o volume de transações até o sistema colapsar.

A distinção fundamental entre os dois é o objetivo: o teste de carga verifica se o sistema atende aos requisitos de desempenho sob condições esperadas; o teste de estresse verifica a robustez e o comportamento sob condições além do esperado. Ambos são testes de requisitos não funcionais, e não se aplicam apenas a sistemas que já passaram por testes funcionais — eles são complementares e podem ser aplicados em qualquer fase do ciclo de vida do software.

A banca explora a confusão entre esses conceitos, além de tentar associar o teste de estresse a usabilidade ou a requisitos funcionais. Vamos analisar cada alternativa.

Critério

Teste de Carga

Teste de Estresse

Objetivo

Verificar se o sistema atende aos requisitos de desempenho sob condições esperadas ou crescentes

Avaliar robustez e comportamento sob condições extremas, além dos limites operacionais

Carga aplicada

Volumes reais ou crescentes de usuários/transações

Volumes que extrapolam os limites especificados

Foco

Identificar gargalos de desempenho (lentidão, falhas de conexão)

Descobrir ponto de ruptura e verificar recuperação após falha

Pergunta-chave

"O sistema aguenta o que foi prometido?"

"O sistema aguenta o que não foi prometido?"

1Teste de carga
Volume realista ou crescente
Verifica requisitos de desempenho
2Teste de estresse
Excede limites operacionais
Avalia robustez e recuperação
3Outros atributos
Segurança
Confiabilidade
Escalabilidade
Testes não funcionais
LEVELsoulevel.com.br
Testes não funcionais: Teste de carga (Volume realista ou crescente, Verifica requisitos de desempenho); Teste de estresse (Excede limites operacionais, Avalia robustez e recuperação); Outros atributos (Segurança, Confiabilidade, Escalabilidade)

Alternativa A — ✅ Correta ⟵ GABARITO

A alternativa A está correta porque define com precisão os dois testes: o teste de carga simula volumes reais ou crescentes de usuários e transações, enquanto o teste de estresse extrapola os limites do sistema para avaliar seu comportamento em condições extremas. Essa é a definição clássica adotada pela engenharia de software, e está alinhada com o que a equipe de qualidade do enunciado precisa aplicar: primeiro, simular a carga de pico (teste de carga) e, depois, submeter o sistema a condições adversas (teste de estresse).

Alternativa B — ❌ Incorreta

A alternativa B está incorreta porque inverte o objetivo do teste de carga. O teste de carga não busca provocar falhas ao exceder intencionalmente os limites operacionais; isso é característica do teste de estresse. O teste de carga busca verificar se o sistema atende aos requisitos de desempenho sob condições esperadas ou crescentes, sem necessariamente ultrapassar os limites. Além disso, a alternativa menciona "requisitos funcionais", mas o teste de carga está relacionado a requisitos não funcionais (desempenho).

Alternativa C — ❌ Incorreta

A alternativa C está incorreta por dois motivos. Primeiro, testes de carga e estresse não são "validação informal" — são testes formais, sistemáticos, que fazem parte da estratégia de testes de software. Segundo, eles se aplicam a sistemas que já passaram por testes funcionais, pois avaliam atributos diferentes (desempenho, robustez) que não são cobertos pelos testes funcionais. O fato de o sistema ter passado por testes funcionais bem-sucedidos não garante que ele terá bom desempenho sob carga, como o próprio enunciado demonstra.

Alternativa D — ❌ Incorreta

A alternativa D está incorreta porque confunde o teste de estresse com o teste de usabilidade. O teste de estresse avalia o comportamento do sistema sob condições extremas de carga, não a usabilidade da interface. A usabilidade é avaliada por testes específicos, como testes de usabilidade, que verificam se a interface é fácil de usar, intuitiva e agradável. O teste de estresse não tem relação com a interação do usuário com a interface, mas sim com a capacidade do sistema de suportar pressão.

Alternativa E — ❌ Incorreta

A alternativa E está incorreta porque afirma que os testes de requisitos não funcionais são focados apenas em desempenho. Na verdade, os requisitos não funcionais abrangem uma ampla gama de atributos, incluindo segurança, confiabilidade, escalabilidade, usabilidade, portabilidade, manutenibilidade, entre outros. O desempenho é apenas um deles. A própria norma ISO 9126 (e sua sucessora ISO 25000) define seis características de qualidade: funcionalidade, confiabilidade, usabilidade, eficiência, manutenibilidade e portabilidade. Portanto, a afirmação é restritiva e incorreta.

NÃO CAIA NESSA!

A banca adora inverter os conceitos de carga e estresse, e também tenta associar o teste de estresse a usabilidade ou a requisitos funcionais. Fique atento: carga = condições esperadas/crescentes; estresse = condições extremas/além dos limites. E lembre-se de que requisitos não funcionais vão muito além de desempenho.

PEGA ESSA DICA!

Para diferenciar na prova, pense: o teste de carga pergunta "o sistema aguenta o que foi prometido?" e o teste de estresse pergunta "o sistema aguenta o que não foi prometido?". Se a questão falar em "exceder limites", "condições extremas", "ponto de ruptura", é estresse. Se falar em "simular volume realista", "carga de pico", "verificar desempenho", é carga.

Gabarito: letra A

Link permanente: /questoes/qg543514