Baustein 10b: Anleitung mit Screenshots, Abnahmelauf, Fassung 1.0.0
docs/ANLEITUNG.md: 20 Abschnitte, 27 Bildschirmfotos, getrennt fuer Ausbilder und Azubi, dazu "Wenn etwas nicht geht". Die Bilder entstehen automatisiert ueber npm run screenshots - was dort steht, ist gemessen und nicht gemalt. scripts/pruefungen/abnahme.mjs (npm run abnahme) laeuft gegen eine frische, leere Datenbank in einem Wegwerfverzeichnis: aufsetzen, Konten anlegen, arbeiten, abnehmen, sichern, beschaedigen, zurueckspielen. Eine Sicherung, die nie zurueckgespielt wurde, ist keine Sicherung. 33 von 33 Pruefungen erfuellt, Protokoll in docs/ABNAHME.md. Dabei drei echte Fehler gefunden, alle in Wegen, die nie ausgefuehrt worden waren: - Die Sicherungsskripte liefen nicht in Git Bash, obwohl das in ihrem Kopf stand: tar deutet den Doppelpunkt in "C:\..." als Rechnernamen. Beide wechseln jetzt erst ins Verzeichnis und uebergeben einen blossen Dateinamen. - Auf einer frischen Datenbank gibt es noch kein Wochenblatt; der Weg jedes neuen Azubis war nie durchlaufen worden. - Der Abnahmelauf selbst liess unter Windows seinen Server ueberleben (kill() beendet nur die cmd.exe) und prueft deshalb jetzt vorher, ob der Port frei ist - sonst haette er gegen fremde Daten geprueft. Fassung 1.0.0: package.json stand noch auf 0.1.0, waehrend das Aenderungsprotokoll bei 0.9.0 war. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
2babef9293
commit
c61d5711e0
@@ -9,10 +9,12 @@ und – der wichtigste Teil – den gesetzlich vorgeschriebenen Ausbildungsnachw
|
||||
Gebaut für **einen Ausbilder und ein bis drei Auszubildende**. Kein
|
||||
Lernplattform-Baukasten, keine Mandanten, keine Cloud.
|
||||
|
||||
> **Stand:** Bausteine 1 bis 9 von 10 sind fertig. Es fehlt nur noch der
|
||||
> Feinschliff: PWA, Offlinebetrieb, Druckansichten und die Anleitung mit
|
||||
> Screenshots. Der [Fahrplan](ROADMAP.md) zeigt, was folgt, das
|
||||
> [Änderungsprotokoll](CHANGELOG.md), was schon drin ist.
|
||||
> **Stand:** Alle zehn Bausteine sind fertig – Fassung 1.0.0.
|
||||
>
|
||||
> - [**Anleitung mit Bildschirmfotos**](docs/ANLEITUNG.md) – wie man damit arbeitet
|
||||
> - [Abnahmeprotokoll](docs/ABNAHME.md) – die Abnahmekriterien, einzeln durchgespielt
|
||||
> - [Änderungsprotokoll](CHANGELOG.md) · [Fahrplan](ROADMAP.md) ·
|
||||
> [Entscheidungen](ENTSCHEIDUNGEN.md)
|
||||
|
||||
---
|
||||
|
||||
@@ -240,10 +242,44 @@ Protokollzeilen.
|
||||
```bash
|
||||
npm run typecheck # TypeScript
|
||||
npm run lint # ESLint
|
||||
npm run test # Vitest – Logik, die wehtut
|
||||
npm run e2e # Playwright – der Hauptweg von Anfang bis Ende
|
||||
npm run test # Vitest – Logik, die wehtut (315 Tests)
|
||||
npm run abnahme # der Abnahmelauf, siehe unten
|
||||
```
|
||||
|
||||
### Der Abnahmelauf
|
||||
|
||||
`npm run abnahme` ist die Prüfung, auf die es ankommt. Er legt ein
|
||||
**Wegwerfverzeichnis** an, startet die Anwendung mit einer **frischen, leeren
|
||||
Datenbank** und spielt den ganzen Weg durch:
|
||||
|
||||
1. Migrationen laufen an, das erste Ausbilderkonto entsteht auf der Kommandozeile
|
||||
2. Die Inhaltsprüfung wird mit einem absichtlich eingebauten Fehler auf die
|
||||
Probe gestellt – sie muss Datei, Zeile und Wert nennen
|
||||
3. Der Ausbilder legt ein Azubikonto an; das Passwort darf danach nirgends mehr
|
||||
auftauchen, in der Datenbank steht ein Argon2id-Hash
|
||||
4. Der Azubi liest ein Handout, lernt eine Karte, meldet eine Aufgabe zur Abnahme
|
||||
5. Der Ausbilder nimmt sie ab; sie schlägt in der Rahmenplanabdeckung durch
|
||||
6. Das Wochenblatt wird angelegt und als PDF ausgegeben
|
||||
7. **Gesichert, absichtlich beschädigt, zurückgespielt.** Eine Sicherung, die
|
||||
nie zurückgespielt wurde, ist keine Sicherung
|
||||
|
||||
Das Protokoll landet in [`docs/ABNAHME.md`](docs/ABNAHME.md).
|
||||
|
||||
Voraussetzung: `npm run build` ist gelaufen, und Port 3399 ist frei – sonst
|
||||
bricht der Lauf mit einer Meldung ab, statt gegen einen fremden Datenbestand zu
|
||||
prüfen.
|
||||
|
||||
### Einzelne Zusagen
|
||||
|
||||
```bash
|
||||
node scripts/pruefungen/musterloesung-dichtheit.mjs # Musterlösung dicht?
|
||||
node scripts/pruefungen/baustein-9.mjs # Abdeckung, Feedback
|
||||
node scripts/pruefungen/baustein-10.mjs # PWA, Offline, Druck
|
||||
```
|
||||
|
||||
Diese drei brauchen eine **laufende** Anwendung unter `http://localhost:3000`
|
||||
mit den Beispieldaten.
|
||||
|
||||
---
|
||||
|
||||
## Aufbau
|
||||
|
||||
Reference in New Issue
Block a user