Usar avaliação automática

É possível fornecer feedback automaticamente sobre envios de código de seus alunos configurando testes para serem executados no repositório de atividade.

Sobre a avaliação automática

Você pode usar a avaliação automática para verificar automaticamente o trabalho de um aluno para uma atividade em GitHub Classroom. Você configura testes para uma atividade e estes são executados imediatamente toda vez que um aluno fizer envio por push para um repositório de atividade em GitHub. O aluno pode visualizar os resultados do teste, fazer mudanças e fazer push para ver novos resultados.

Depois que um aluno aceita uma atividade, em cada push para o repositório de atividades, GitHub Actions executa os comandos do seu teste de avaliação automática em um ambiente Linux que contém o código mais novo do aluno. GitHub Classroom cria os fluxos de trabalho necessários para GitHub Actions. Você não precisa ter experiência com GitHub Actions para usar a avaliação automática.

Pode usar uma estrutura de teste, executar um comando personalizado, escrever testes de entrada/saída ou combinar diferentes métodos de teste. O ambiente Linux para avaliação automática contém muitas ferramentas de software populares. Para obter mais informações, consulte as informações sobre a versão mais recente do Ubuntu em "Especificações para executores hospedados em GitHub".

Você pode ter uma visão geral dos alunos que estão passando testes de avaliação automática acessando a atividade em GitHub Classroom. Uma marca de verificação verde significa que todos os testes estão passando para o aluno, e um X vermelho significa que alguns ou todos os testes estão falhando para o aluno. Se você ganhou pontos para um ou mais testes, uma bolha irá mostrar a pontuação para os testes da pontuação máxima possível para a atividade.

Visão geral de uma atividade com resultados de avaliação automática

Métodos de avaliação

Há dois métodos de avaliação: testes de entrada/saída e testes de comando de execução.

Teste de entrada/saída

Um teste de entrada/saída opcionalmente executa um comando de configuração e, em seguida, fornece a entrada padrão para um comando de teste. GitHub Classroom avalia a saída do comando de teste para um resultado esperado.

ConfiguraçãoDescrição
Nome de testeO nome do teste, para identificar o teste em registros
Comando de configuraçãoOpcional. Um comando a ser executado antes dos testes, como compilação ou instalação
Executar comandoO comando para executar o teste e gerar saída padrão para avaliação
EntradasEntrada padrão para o executar o comando
Saída esperadaA saída que você quer ver como saída padrão do comando de execução
ComparaçãoO tipo de comparação entre a saída do comando de execução e a saída esperada

  • Incluído: Passa quando a saída esperada aparece
    em qualquer lugar na saída padrão do comando de execução
  • Exato: Passa quando a saída esperada é completamente idêntica
    à saída padrão do comando de execução
  • Regex: Passa se a expressão regular na saída esperada
    corresponde à saída padrão do comando de execução
Tempo esgotadoQuanto tempo um teste deve ser executado em minutos antes de resultar em falha
PontosOpcional. O número de pontos que o teste vale para uma pontuação total

Executar teste de comando

Um comando de execução executa um comando de configuração e, em seguida, executa um comando de teste. GitHub Classroom verifica o status de saída do comando de teste. Um código de saída de 0 resulta em sucesso e qualquer outro código de saída resulta em falha.

GitHub Classroom fornece predefinições para testes de comando de execução específicos da linguagem para uma variedade de linguagens de programação. Por exemplo, o teste Executar nó preenche previamente o comando de configuração com instalação de npm e o comando de teste com teste de npm.

ConfiguraçãoDescrição
Nome de testeO nome do teste, para identificar o teste em registros
Comando de configuraçãoOpcional. Um comando a ser executado antes dos testes, como compilação ou instalação
Executar comandoO comando para executar o teste e gerar um código de saída para avaliação
Tempo esgotadoQuanto tempo um teste deve ser executado em minutos antes de resultar em falha
PontosOpcional. O número de pontos que o teste vale para uma pontuação total

Configurar testes de avaliação automática para uma atribuição

Você pode adicionar testes de avaliação automática durante a criação de uma nova atividade. Para obter mais informações, consulte "Criar uma atividade individual" ou "Criar uma atividade em grupo".

Você pode adicionar, editar ou excluir testes de avaliação automática para uma atividade existente. Se você alterar os testes de avaliação automática para uma atribuição existente, os repositórios de atividade existentes não serão afetados. Um aluno ou equipe deve aceitar a atividade e criar um novo repositório de atividade para usar os novos testes.

  1. Efetue o login em GitHub Classroom.
  2. Na lista de salas de aula, clique na sala de aula que você deseja visualizar. Sala de aula na lista de salas de aula de uma organização
  3. À direita da atividade que você deseja editar, clique em . Ícone de lápis para editar a atividade na lista de atividades
  4. Na barra lateral esquerda, clique em Avaliações e feedback. "Avaliações e feedback" à esquerda dos fundamentos da aitivdade
  5. Adicionar, editar ou excluir um teste de avaliação automática.
    • Para adicionar um teste, em "Adicionar testes de avaliação automática", selecione o menu suspenso Adicionar teste e, em seguida, clique no método de avaliação que você deseja usar. Using the "Add test" drop-down menu to click a grading method Configure o teste e, em seguida, clique em Salvar caso de teste. Botão "Salvar caso de teste" para um teste de avaliação automática
    • Para editar um teste, à direita do nome do teste, clique em . Pencil icon for editing an autograding test Configure o teste e, em seguida, clique em Salvar caso de teste. Botão "Salvar caso de teste" para um teste de avaliação automática
    • Para excluir um teste, à direita do nome do teste, clique em . Ícone da lixeira para excluir um teste de avaliação automática
  6. Na parte inferior da página, clique em Atualizar atividade. Botão "Atualizar a atividade" na parte inferior da página

Visualizar e fazer o download de resultados de testes de autoavaliação

Fazer o download dos resultados da auto-avaliação

Você também pode fazer o download do CSV da pontuação da autoavaliação dos seus alunos por meio do botão "Download". Isso irá gerar e fazer o download de um CSV que contém um link para o repositório do aluno, seu gerenciador de GitHub, identificador da lista de participantes, registro de hora de envio e pontuação de da autoavaliação.

O botão "Download" selecionado que mostra "Fazer o download de notas destacadas" e uma opção adicional para "Fazer o download dos repositórios"

Ver registros individuais

  1. Efetue o login em GitHub Classroom.
  2. Na lista de salas de aula, clique na sala de aula que você deseja visualizar. Sala de aula na lista de salas de aula de uma organização
  3. Na lista de atividades, clique na atividade que você deseja visualizar. Atividade na lista de atividades para uma sala de aula
  4. À direita de um envio, clique em Visualizar teste. Botão "Visualizar teste" para envio de uma atividade
  5. Revise a saída de teste. Para obter mais informações, consulte "Usar registros de execução do fluxo de trabalho".

Leia mais

Esse documento ajudou você?

Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.