Logo Passei Direto
Buscar
Pergunta 2 Durante a validação de uma função criada para automatizar uma rotina comum no sistema, foram definidos alguns testes com base em diferentes combinações de entrada. O trecho de código abaixo representa a lógica usada para atualizar o status de um pedido: def processar_pedido(pedido): if pedido["pago"]: if pedido["estoque"] > 0: pedido["status"] = "Confirmado" else: pedido["status"] = "Aguardando Estoque" else: pedido["status"] = "Pagamento Pendente" Foram aplicados os seguintes testes: Teste 1: {"pago": True, "estoque": 5} Teste 2: {"pago": True, "estoque": 0} Com base nesses testes e no código apresentado, avalie as afirmativas a seguir: A linha pedido["status"] = "Pagamento Pendente" não foi executada em nenhum dos testes. O bloco if pedido["pago"]: foi testado tanto com o resultado verdadeiro quanto falso. A cobertura de declaração ainda não é total, pois nem todas as instruções foram executadas. A adição de um teste com {"pago": False} permitiria alcançar 100% de statement coverage. Está correto o que se afirma em: a. I, III
User badge image
marcosssergio

mês passado

Respostas

User badge image

Ed Verified user icon

mês passado

Vamos analisar cada afirmativa com base no código e nos testes apresentados: 1. A linha `pedido["status"] = "Pagamento Pendente"` não foi executada em nenhum dos testes. Verdadeiro. Nos testes fornecidos, o primeiro teste (`{"pago": True, "estoque": 5}`) e o segundo teste (`{"pago": True, "estoque": 0}`) não fazem com que essa linha seja executada, pois em ambos os casos o pedido está marcado como pago. 2. O bloco `if pedido["pago"]:` foi testado tanto com o resultado verdadeiro quanto falso. Falso. Apenas o caso em que `pedido["pago"]` é verdadeiro foi testado. O teste com `{"pago": False}` não foi realizado. 3. A cobertura de declaração ainda não é total, pois nem todas as instruções foram executadas. Verdadeiro. Como a linha que define `pedido["status"] = "Pagamento Pendente"` não foi executada, a cobertura de declaração não é total. 4. A adição de um teste com `{"pago": False}` permitiria alcançar 100% de statement coverage. Verdadeiro. Se um teste com `{"pago": False}` fosse adicionado, isso faria com que a linha `pedido["status"] = "Pagamento Pendente"` fosse executada, alcançando assim 100% de cobertura de declaração. Com base nas análises: - A afirmativa I é verdadeira. - A afirmativa II é falsa. - A afirmativa III é verdadeira. - A afirmativa IV é verdadeira. Portanto, a alternativa correta que contém todas as afirmações verdadeiras é: a. I, III.

Essa resposta te ajudou?

0
Dislike0
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar essa resposta. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Mais conteúdos dessa disciplina