Skip to main content
Nous publions des mises à jour fréquentes de notre documentation, et la traduction de cette page peut encore être en cours. Pour obtenir les informations les plus actuelles, consultez la documentation anglaise.

Utiliser l’évaluation automatique

Vous pouvez automatiquement fournir des commentaires sur les soumissions de code de vos étudiants en configurant des tests à exécuter dans le dépôt de devoirs.

Qui peut utiliser cette fonctionnalité

Organization owners who are admins for a classroom can set up and use autograding on assignments in a classroom. Pour plus d’informations sur les administrateurs de classe, consultez « À propos de la gestion des classes ».

À propos de l’évaluation automatique

Vous pouvez utiliser la notation automatique afin de vérifier automatiquement un devoir effectué par un étudiant sur GitHub Classroom. Vous configurez des tests pour une assignation, et les tests s’exécutent immédiatement chaque fois qu’un étudiant procède à un envoi (push) vers un référentiel d’assignations sur GitHub.com. L’étudiant peut consulter les résultats des tests, apporter des modifications et procéder à des envois (push) pour consulter de nouveaux résultats.

Dès qu’un étudiant accepte un devoir, chaque fois qu’il le pousse dans le dépôt de devoir, GitHub Actions exécute les commandes de votre test d’évaluation automatique dans un environnement Linux contenant le code le plus récent de l’étudiant. GitHub Classroom crée les workflows nécessaires pour GitHub Actions. Vous n’avez pas besoin de bien connaître GitHub Actions pour utiliser l’évaluation automatique.

Vous pouvez utiliser un framework de test, exécuter une commande personnalisée, écrire des tests d’entrée/sortie ou combiner différentes méthodes de test. L’environnement Linux pour l’évaluation automatique contient de nombreux outils logiciels populaires. Pour plus d’informations, consultez les détails de la dernière version d’Ubuntu dans « Spécifications des exécuteurs hébergés par GitHub ».

Vous pouvez obtenir une vue d’ensemble des étudiants qui réussissent les tests d’évaluation automatique en accédant au devoir dans GitHub Classroom. Une coche verte signifie que l’étudiant réussit tous les tests et un X rouge signifie qu’il échoue à une partie ou la totalité des tests. Si vous attribuez des points à un ou plusieurs tests, une bulle montre la note des tests sur la note maximale possible du devoir.

Vue d’ensemble d’un devoir avec des résultats d’évaluation automatique

Méthodes d’évaluation

Il existe deux méthodes d’évaluation : les tests d’entrée/sortie et les tests de commande d’exécution.

Test d’entrée/sortie

Un test d’entrée/sortie exécute éventuellement une commande d’installation, puis fournit une entrée standard à une commande de test. GitHub Classroom évalue la sortie de la commande de test par rapport à un résultat attendu.

ParamètreDescription
Nom du testNom du test, pour identifier le test dans les journaux
Commande d’installationFacultatif. Commande à exécuter avant les tests, comme la compilation ou l’installation
Commande d’exécutionCommande permettant d’exécuter le test et de générer une sortie standard pour l’évaluation
EntréesEntrée standard pour la commande d’exécution
Sortie attendueSortie que vous voulez voir comme sortie standard de la commande d’exécution
ComparaisonType de comparaison entre la sortie de la commande d’exécution et la sortie attendue

  • Inclus : réussit quand la sortie attendue s’affiche
    n’importe où dans la sortie standard de la commande d’exécution
  • Exact : réussit quand la sortie attendue est complètement identique
    à la sortie standard de la commande d’exécution
  • Regex : réussit si l’expression régulière dans la sortie attendue
    correspond à la sortie standard de la commande d’exécution
Délai d'expirationEn minutes, durée d’exécution d’un test avant d’entraîner un échec
PointsFacultatif. Nombre de points du test sur une note totale

Test de commande d’exécution

Un test de commande d’exécution exécute une commande d’installation, puis une commande de test. GitHub Classroom vérifie l’état de sortie de la commande de test. Le code de sortie 0 indique la réussite et tous les autres code de sortie indique l’échec.

GitHub Classroom fournit des présélections pour les tests de commande d’exécution en fonction des différents langages de programmation. Par exemple, le test Exécuter le nœud préremplit la commande d’installation avec npm install et la commande de test avec npm test.

ParamètreDescription
Nom du testNom du test, pour identifier le test dans les journaux
Commande d’installationFacultatif. Commande à exécuter avant les tests, comme la compilation ou l’installation
Commande d’exécutionCommande permettant d’exécuter le test et de générer un code de sortie pour l’évaluation
Délai d'expirationEn minutes, durée d’exécution d’un test avant d’entraîner un échec
PointsFacultatif. Nombre de points du test sur une note totale

Configuration des tests d’évaluation automatique pour un devoir

Vous pouvez ajouter des tests d’évaluation automatique pendant la création d’un devoir. Pour plus d’informations, consultez « Créer un devoir individuel » ou « Créer un devoir de groupe ».

Vous pouvez ajouter, modifier ou supprimer des tests d’évaluation automatique pour un devoir existant. Comme tous les changements effectués dans l’interface utilisateur de Classroom sont envoyés aux dépôts existants de l’étudiant, faites attention quand vous modifiez vos tests.

  1. Connectez-vous à GitHub Classroom. 1. Dans la liste des classes, cliquez sur la classe que vous souhaitez afficher. Classe dans la liste des salles des classes d’une organisation 1. À droite du devoir à modifier, cliquez sur . Icône de crayon permettant de modifier un devoir dans la liste des devoirs
  2. Dans la barre latérale gauche, cliquez sur Évaluation et commentaires. « Évaluation et commentaires » à gauche des éléments de base du devoir
  3. Ajoutez, modifiez ou supprimez un test d’évaluation automatique.
    • Pour ajouter un test, sous « Ajouter des tests d’évaluation automatique », sélectionnez le menu déroulant Ajouter un test, puis cliquez sur la méthode d’évaluation que vous voulez utiliser. Utilisation du menu déroulant « Ajouter un test » pour cliquer sur une méthode Configurez le test, puis cliquez sur Enregistrer le cas de test. Bouton « Enregistrer le cas de test » pour un test d’évaluation automatique
    • Pour modifier un test, à droite du nom du test, cliquez sur . Icône de crayon pour modifier un test d’évaluation automatique Configurez le test, puis cliquez sur Enregistrer le cas de test. Bouton « Enregistrer le cas de test » pour un test d’évaluation automatique
    • Pour supprimer un test, à droite du nom du test, cliquez sur . Icône de corbeille pour supprimer un test d’évaluation automatique
  4. En bas de la page, cliquez sur Mettre à jour le devoir. « Mettre à jour le devoir » en bas de la page

Consultation et téléchargement des résultats des tests d’évaluation automatique

Télécharger les résultats d’évaluation automatique

Vous pouvez également télécharger un CSV des notes d’évaluation automatique de vos étudiants en cliquant sur le bouton « Télécharger ». Cela génère et télécharge un CSV contenant un lien vers le dépôt de l’étudiant, son descripteur GitHub, l’identificateur dans la liste de classe, l’horodatage d’envoi et la note d’évaluation automatique.

Bouton « Télécharger » sélectionné montrant « Télécharger les notes » sélectionné et une option supplémentaire pour « Télécharger les dépôts »

Voir les journaux individuels

  1. Connectez-vous à GitHub Classroom. 1. Dans la liste des classes, cliquez sur la classe que vous souhaitez afficher. Classe dans la liste des salles des classes d’une organisation 1. Dans la liste des devoirs, cliquez sur le devoir à afficher. Devoir dans la liste des devoirs d’une classe
  2. À droite d’un envoi, cliquez sur Voir le test. Bouton « Voir le test » pour un envoi de devoir
  3. Passez en revue la sortie du test. Pour plus d’informations, consultez « Utilisation des journaux d’exécution de workflow ».

Pour aller plus loin