Diese Seite gilt für alle Module, die auf Classroom 50 laufen. Der alte Ablauf über GitHub Classroom steht unter Github Classroom (veraltet).
Neu gegenüber GitHub Classroom: Der GitHub-Benutzername wird nicht mehr im Moodle-Profil eingetragen (weder unter Pseudonym noch unter GitHub Classroom). Classroom 50 vergleicht direkt Moodle-Benutzername und GitHub-Login.
<CLASSROOM>-<SLUG>-<DEIN-LOGIN> in der Organisation der Klasse.Das Repository enthält den Startcode aus dem Template. Die Tests der Lehrperson sind bereits hinterlegt.
git clone https://github.com/<ORG>/<CLASSROOM>-<SLUG>-<DEIN-LOGIN>.git cd <CLASSROOM>-<SLUG>-<DEIN-LOGIN>
Danach eine virtuelle Umgebung anlegen und die Abhängigkeiten installieren — der Ablauf ist unverändert, siehe Virtual Environment und git und Python venv.
python3 -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate pip install -r requirements.txt
Die requirements.txt ist für deine lokale Arbeit da. Die Bewertung auf
GitHub benutzt sie bewusst nicht, sondern eigene, festgelegte Versionen. Deshalb
kann es vorkommen, dass pylint auf GitHub etwas strenger urteilt als bei dir
lokal.
Abgeben heisst: pushen. Es gibt keinen separaten Abgabeknopf.
git add . git commit -m "Aufgabe gelöst" git push
Jeder Push löst eine neue Bewertung aus. Du kannst beliebig oft pushen; gewertet wird die letzte Abgabe vor dem Abgabetermin.
Nach ein bis zwei Minuten stehen im Repository vier Dinge:
| Ort | Was du dort siehst |
|---|---|
| Häkchen / Kreuz neben dem Commit | Kurzfassung, z.B. classroom50/autograde: 5/7 (2/3 tests passed) |
| Reiter Actions | das vollständige Log des Bewertungslaufs |
| Reiter Releases | ein Release pro Abgabe mit der Feedback-Tabelle |
| Pull Request Feedback | dasselbe Feedback als Kommentar |
Die Feedback-Tabelle sieht so aus:
### classroom50 autograde: 5/7 ## Unittests | name | feedback | expected | actual | points | max | | -------- | --------------- | -------- | ------ | ------ | --- | | test_ggt | Assertion Error | 8 | None | 0 | 2 | **0.00/2.00 Points (0.00%)**
Die Punkte werden nachts nach Moodle übertragen, ungefähr um 05:00 Uhr. Wenn du am Abend pushst, steht die Note am nächsten Morgen in Moodle. Braucht die Lehrperson die Noten früher, kann sie den Übertrag von Hand auslösen.
Verspätete Abgaben werden übertragen und im Feedback als solche gekennzeichnet.
| Frage | Antwort |
|---|---|
Ich sehe 0/0 statt Punkten. | Für diese Aufgabe ist (noch) keine Bewertung hinterlegt. Kein Fehler deinerseits — der Lehrperson melden. |
| Das Häkchen ist rot, obwohl alle Tests grün sind. | Dann kostet das Linting die Punkte. Schau in die Zeile Linting im Release. |
| Es läuft gar kein Bewertungslauf. | Enthält deine Commit-Message NOACTION oder CLASSROOM 50, wird der Lauf absichtlich übersprungen. Sonst: Reiter Actions prüfen. |
| Ich habe nach dem Abgabetermin gepusht. | Die Abgabe wird trotzdem bewertet und als verspätet markiert. |
| Meine Note fehlt in Moodle. | Meist stimmt Moodle-Benutzername ≠ GitHub-Login. Der Lehrperson melden. |
Mehr: Problembehandlung.