-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Faciliter l'auto-correction avec GitHub Classroom #78
Comments
Un problème avec l'auto-correction actuelle de Classrooms (github-education-resources/autograding#111) avec une Action est que c'est 0 ou 100%, sauf si on crée un classrooms.yaml personnalisé (ce qui va à l'encontre de la structure du framework Jest avec les suites, it, expect, etc.). Bref, si une action de "npm test" (ou n'importe quel test) se termine avec 0 == 100%, sinon une action se termine avec 1 (au moins un test qui échoue) == 0%. Un autre défi est que GitHub a archivé le projet education/autograding en mai, alors ce n'est pas sûr si le projet va continuer de même. Une solution éventuelle pourrait être de générer un .json à partir de Jest et de l'analyser pour calculer des points. https://github.com/im-open/process-jest-test-results est un projet intéressant à ce propos. Quelque soit la solution, il faudrait qu'elle s'adapte à des changements dans Jest. C'est à dire qu'on peut facilement rajouter ou supprimer des tests/expect dans Jest et le calcul de la note pour la partie test s'adapte en conséquence. C'est très pénible (même avec Copilot ou ChatGPT) de faire un classroom.yaml à la main à partir des tests Jest. |
Voici ce que propose GitHub classrooms pour un "Custom YAML" pour les tests du lab0: name: Autograding Tests
'on':
- push
- repository_dispatch
permissions:
checks: write
actions: read
contents: read
jobs:
run-autograding-tests:
runs-on: ubuntu-latest
if: github.actor != 'github-classroom[bot]'
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Lab 0 tests
id: lab-0-tests
uses: classroom-resources/autograding-command-grader@v1
with:
test-name: Lab 0 tests
setup-command: npm ci
command: npm test
timeout: 10
max-score: 100
- name: Autograding Reporter
uses: classroom-resources/autograding-grading-reporter@v1
env:
LAB-0-TESTS_RESULTS: "${{steps.lab-0-tests.outputs.result}}"
with:
runners: lab-0-tests Je note que les actions utilisées actuellement n'ont pas été archivées:
J'ai également créé un issue pour montrer un cas concret avec de multiples tests qui ne fonctionne pas comme on voudrait dans node. |
Auto Correction
En tant que chargé de laboratoire, j'ai besoin que GitHub Classroom puisse corriger les laboratoire automatiquement afin que je puisse noter ceux-ci justement.
Github Action
Pour ce faire je propose d'utiliser la fonction de "Grading and Feedback" de GH Classroom afin de séparer les différent point d'évaluation (exemple ne pas avoir le test pour vérifier le test de parasites-mollassons et les test pour vérifier le classement ne devrait pas être dans le même test)
Jest
Afin d'arriver à notre but avec le gradins et Feedback il va donc falloir séparer les test fait dans le template des test que l'étudiant va rajouter
Exemples:
Ceci permettrais d'avoir un calcul plus détaillé de la note d'un élève directement dans GH classroom. Afin de s'assurer que l'élève ne modifie pas les test de autograding il suffit de protéger tout les fichier dans le dossier AutoGrading
The text was updated successfully, but these errors were encountered: