Testando, observando e registrando resultados

Os estudantes utilizam desafios interativos para experimentar comandos, observar resultados e repetir tentativas. O foco não é apenas chegar à resposta, mas aprender a verificar o comportamento do programa de forma organizada.

Passo a Passo para Execução

  1. Abrir um desafio interativo de programação e apresentar a área em que o código pode ser executado.
  2. Pedir que os alunos leiam a situação antes de montar os comandos.
  3. Solicitar uma previsão do que o personagem deverá fazer.
  4. Executar o programa e registrar o resultado observado.
  5. Comparar o resultado real com a previsão.
  6. Alterar uma única parte do código e executar novamente para observar a diferença.
  7. Criar pelo menos três situações de teste: uma fácil, uma diferente da primeira e uma próxima do limite da regra.
  8. Registrar em uma tabela quais testes funcionaram e quais exigiram mudanças.
  9. Pedir que as duplas expliquem por que um único teste não é suficiente para garantir que um programa esteja correto.
  10. Reexecutar os testes depois das correções.
  11. Encerrar relacionando esse processo à verificação de aplicativos, jogos, sites e equipamentos digitais usados no cotidiano.

Comentários

Teste é uma tentativa planejada de descobrir como o programa se comporta em determinada situação. Validação significa conferir se o resultado atende ao que foi esperado. Um teste de limite ajuda a descobrir problemas em valores muito próximos de uma regra. Depois de uma correção, repetir os testes também é importante para verificar se uma mudança não criou outro problema. Na vida real, esse cuidado aparece na criação de jogos, aplicativos, caixas eletrônicos, sites e até em aparelhos que precisam responder corretamente a muitos tipos diferentes de uso.

Laboratório de testes

As crianças se transformam em equipes de teste e recebem pequenas regras para verificar com diferentes entradas. Cada rodada pede uma previsão, uma execução e uma comparação entre o que deveria acontecer e o que realmente aconteceu.

Materiais Necessários

  • Cartões de entrada com diferentes números, cores, tamanhos ou situações
  • Cartões contendo regras que os grupos precisam testar
  • Tabela de registro com colunas para entrada, resultado esperado e resultado observado
  • Cartões ou selos para marcar teste aprovado e teste que precisa ser investigado
  • Lápis grafite e borracha
  • Canetinhas para destacar resultados diferentes
  • Envelopes separados por conjunto de testes
  • Quadro branco

Passo a Passo da Execução

  1. Explicar que testar significa colocar o programa ou a regra em situações diferentes para observar seu comportamento.
  2. Apresentar uma regra simples e perguntar o que deveria acontecer com uma determinada entrada.
  3. Registrar a previsão antes de executar a regra.
  4. Aplicar a mesma regra a uma segunda entrada para verificar se o comportamento continua correto.
  5. Introduzir um valor que esteja exatamente no limite de uma regra.
  6. Comparar o resultado esperado com o resultado observado.
  7. Quando os dois resultados forem diferentes, marcar o caso para investigação em vez de simplesmente descartá-lo.
  8. Formar duplas e entregar diferentes conjuntos de entradas para cada uma testar.
  9. Pedir que as crianças registrem todas as tentativas, inclusive as que não apresentaram problema.
  10. Reescrever uma regra que esteja incompleta e repetir os testes.
  11. Encerrar destacando que encontrar uma falha durante o teste ajuda a melhorar o programa antes que outras pessoas o utilizem.

Conexão Computacional

Caso de teste é uma situação escolhida para verificar se um programa responde corretamente. Entrada é a informação fornecida ao programa e saída é o resultado que ele produz. O resultado esperado é aquilo que acreditamos que deveria acontecer. Um caso de limite usa um valor próximo da fronteira de uma regra, como exatamente 10 quando a regra diz 'maior que 10'. Na vida real, testar é parecido com experimentar um brinquedo antes de entregá-lo a outra pessoa: verificamos diferentes situações para descobrir problemas que não aparecem em uma única tentativa.