Questão nº 39
Questão de Tecnologias da Informação · FCC SEFAZ-SC 2018 - Conhecimentos Específicos (P3) (nº 39)
Os testes unitários são aplicados em subprogramas individuais ou em componentes maiores construídos com unidades altamente coesas e são executados:
I. sempre com acesso ao código que está sendo testado.
II. normalmente com o suporte de ferramentas de depuração.
III. sempre pelos programadores que escreveram o código.
IV. para verificar o funcionamento dos elementos de software separadamente.
Está correto o que consta de
- AI e IV, apenas.
- BI, II e III, apenas.
- CI, II e IV, apenas. (alternativa correta)
- DII, III e IV, apenas.
- EI, II, III e IV.
Resposta comentada
Gabarito Alternativa C
Testes unitários são pequenos exames que verificam se partes minúsculas de um programa (como uma função ou método) funcionam corretamente e de forma isolada. Eles são a primeira linha de defesa contra erros no desenvolvimento de software.
(A) Incorreta: A alternativa II também está correta, não apenas I e IV.
(B) Incorreta: A alternativa III está incorreta devido ao uso do termo "sempre".
(C) Correta:
- I. sempre com acesso ao código que está sendo testado: Para testar uma unidade, o teste precisa invocar seu código diretamente e verificar seu comportamento, o que exige acesso ao código-fonte.
- II. normalmente com o suporte de ferramentas de depuração: Quando um teste unitário falha, é comum e útil usar depuradores para investigar o código e entender a causa do erro.
- IV. para verificar o funcionamento dos elementos de software separadamente: O propósito fundamental do teste unitário é isolar e testar a menor unidade de funcionalidade possível, garantindo que ela opere corretamente por si só.
(D) Incorreta: A alternativa III está incorreta.
(E) Incorreta: A alternativa III está incorreta.
Comentário do distrator mais tentador (III):
A armadilha da alternativa III está na palavra "sempre". Embora seja uma boa prática e muito comum que os programadores que escrevem o código também escrevam seus testes unitários (ou até mesmo escrevam os testes antes do código, no TDD), não é uma regra absoluta. Em algumas equipes, outros desenvolvedores podem revisar e escrever testes, ou especialistas em testes podem contribuir. Além disso, em refatorações ou manutenções, outros programadores podem escrever testes para um código que não foi originalmente escrito por eles. Portanto, a afirmação de que é "sempre" pelos programadores que escreveram o código torna a alternativa incorreta.
Fonte: FCC SEFAZ-SC 2018 - Conhecimentos Específicos (P3) Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.