Die letzten fuenf blinden Messungen bekommen einen Finger

Die Grundlinie der Fingerwache sinkt von 6 auf 1.

DIE SCHWEREN FAELLE

pruef-notizen, pruef-teamlage-karten, pruef-terminregel,
pruef-werdegang, pruef-befinden.

Bei diesen fuenf stand mitten im Ablauf ein
`setViewportSize({ width: 390 })`. Das aendert nur die Groesse --
`hasTouch` gehoert zum KONTEXT und ist beim Anlegen entschieden.
Nachtragen geht nicht; es braucht ein zweites Fenster.

DAS MUSTER, DAS FUER ALLE FUENF GETRAGEN HAT

  const handyKontext = await browser.newContext({
    viewport: { width: 390, height: 844 }, hasTouch: true, isMobile: true });
  await handyKontext.addCookies(await kontext.cookies());
  const handy = await handyKontext.newPage();
  await handy.goto(seite.url(), { waitUntil: "networkidle" });

Drei Entscheidungen darin:

  - Die Anmeldung wandert als Keks mit, statt sie zu wiederholen.
    Eine zweite Anmeldung waere eine zweite Stelle, die veralten
    kann.
  - Die Adresse kommt von `seite.url()`. Sie ein zweites Mal
    hinzuschreiben waere eine zweite Wahrheit darueber, welche
    Seite gemessen wird.
  - Das fruehere Zuruecksetzen auf 1280 px faellt weg. Die breite
    Seite war nie schmal -- es gibt nichts zurueckzustellen.

Bei pruef-terminregel liessen sich die vier Schritte, die den
schwebenden Hinweis erzeugen, nicht uebernehmen: Sie werden im
neuen Kontext nachgefahren (oeffnen, "Neu", Datum eintragen).

ALLE FUENF DANACH GRUEN

  pruef-notizen         EXIT 0
  pruef-teamlage-karten EXIT 0  (39 geprueft)
  pruef-terminregel     EXIT 0  (35 Pruefungen)
  pruef-werdegang       EXIT 0
  pruef-befinden        EXIT 0

Diese Seiten halten die Fingerregeln also schon ein. Es hatte nur
nie jemand nachgesehen.

EINES BLEIBT: pruef-grosscheck

Die Datei zu aendern waere ein Zweizeiler. Sie zu PRUEFEN hiesse,
206 Seiten ueber vier Rollen und zwei Bildschirmgroessen laufen zu
lassen -- das braucht Filipes Zusage. Eine Aenderung, die ich nicht
pruefen darf, liefere ich nicht aus. Die Grundlinie steht deshalb
auf 1 und nicht auf 0.

GEPRUEFT
  pruef-fingermass  3 / 0, neun Gegenproben, Grundlinie 1
This commit is contained in:
2026-09-29 16:00:57 +02:00
parent d5e873d597
commit b846693de5
6 changed files with 135 additions and 34 deletions
+22 -4
View File
@@ -770,18 +770,36 @@ melde("=== 11. Im Browser ===");
/* HANDY. Zwölf Seiten hatten am 06.09. genau hier ihren Fehler: ein
Knopf lag über einem anderen, weil eine feste Schwelle nicht mehr
passte. */
await seite.setViewportSize({ width: 412, height: 915 });
await seite.waitForTimeout(500);
const handy = await seite.evaluate(() => ({
/* EIN EIGENER KONTEXT MIT FINGER (29.09.2026).
Hier stand `seite.setViewportSize({ width: 412 })`. Das aendert
nur die Groesse: `hasTouch` gehoert zum KONTEXT und laesst sich
danach nicht mehr setzen. Ohne ihn meldet der Browser
`pointer: fine`, und KEINE Regel aus `@media (pointer: coarse)`
greift -- dort stehen die 44-Pixel-Beruehrziele, also genau die
Groessen, deren Ueberlappung dieser Abschnitt sucht.
Die Anmeldung wandert als Keks mit, die Adresse kommt von der
Seite selbst -- keine zweite Wahrheit darueber, was gemessen
wird. */
const handyKontext = await browser.newContext({
viewport: { width: 412, height: 915 }, hasTouch: true, isMobile: true });
await handyKontext.addCookies(await kontext.cookies());
const handySeite = await handyKontext.newPage();
await handySeite.goto(seite.url(), { waitUntil: "networkidle" });
await handySeite.waitForTimeout(500);
const handy = await handySeite.evaluate(() => ({
breiter: document.documentElement.scrollWidth > document.documentElement.clientWidth + 1,
balkenSichtbar: [...document.querySelectorAll('.w-bewegung__balken')]
.every((b) => b.getBoundingClientRect().width >= 8),
}));
ok(!handy.breiter, "auf 412 px steht nichts über den Rand hinaus");
ok(handy.balkenSichtbar, "und die Balken sind noch breit genug, um sie zu sehen");
await handyKontext.close();
if (process.env.SCHIRM) {
await seite.setViewportSize({ width: 1280, height: 1100 });
/* `seite` war nie schmal -- das fruehere Zurueckstellen auf
1280 ist damit hinfaellig. */
await seite.waitForTimeout(400);
await seite.screenshot({
path: "C:/Users/qciga/Documents/Obelix/DogiHompage/pruef-werdegang.png",