Files
Projektwissen/docs/tests/verfahrensgebiet-eigentuemer-anzeige.md
T
DanielandClaude Opus 5.5 abac5a015c Anzeigefenster ohne Vollbild: Testkonzept und Fallstrick (Verfahrensgebiet #56)
Befund aus dem QGIS-Test (Fenster immer auf dem Hauptbildschirm, im
Vollbild nicht zu verlassen) in fallstricke.md festgehalten; Testkonzept,
Modulkarte und Testkatalog an das Fenster mit Rahmen und die
Pfadanzeige der Korrektur-Datei angepasst.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 13:44:18 +02:00

7.0 KiB
Raw Blame History

Testkonzept: Anzeige für den Eigentümer und Korrekturen

Plugin: sn_verfahrensgebiet · Stand: 06.10.2026 · Pflege: bei jeder Änderung an diesem Ablauf

Worum es fachlich geht

Im Termin sitzt der Eigentümer vor einem zweiten Bildschirm. Dort sieht er nur seine eigenen gespeicherten Daten: Name, Anschrift und E-Mail. Den QGIS-Bildschirm mit Trefferliste, Konten und anderen Personen sieht er nicht. Die Sachbearbeitung beginnt zu Beginn der Termine eine Sitzung und schiebt das Anzeigefenster auf den Bildschirm des Eigentümers; beim nächsten Mal erscheint es wieder dort. Für jeden Eigentümer wählt sie in der Trefferliste die passenden Einträge und zeigt sie an. Stimmt etwas nicht, korrigiert sie es im Plugin. Der Eigentümer sieht die Korrektur sofort. Vor dem nächsten Eigentümer leert sie die Anzeige, ohne das Fenster zu schließen. Am Ende beendet sie die Sitzung.

Die Eigentümerdatei selbst wird nie verändert. Jede Korrektur landet als eigene Zeile in einer Korrektur-CSV neben der Eigentümerdatei und kann später in das Fachverfahren übernommen werden.

Die Suche bis zur Trefferliste beschreibt verfahrensgebiet-eigentuemersuche.md.

Der Ablauf

flowchart TD
    A["1 Sitzung beginnen"] --> B["2 Anzeigefenster öffnet leer, mit Rahmen;<br/>Bearbeiter schiebt es auf den zweiten Bildschirm"]
    T["Trefferliste: Einträge wählen,<br/>„Daten anzeigen“"] --> C{"Sitzung läuft?"}
    C -->|nein| A
    C -->|ja| D["3 Eigentümer sieht Name,<br/>Anschrift, E-Mail"]
    B --> D
    D --> E{"4 Daten richtig?"}
    E -->|nein| F["5 Korrigieren: Änderung<br/>in Korrektur-CSV, sofort angezeigt"]
    F --> E
    E -->|ja| G["6 Anzeige leeren<br/>(Fenster bleibt offen)"]
    G --> T
    G --> H["7 Sitzung beenden:<br/>Fenster schließt"]

    style G fill:#e9f5e9,stroke:#2b8a3e

Was geprüft wird

Die Tests liegen in Plugin_SN_Verfahrensgebiet/tests/test_eigentuemer_anzeige.py (Anzeigetext, Fenster öffnen), tests/test_eigentuemer_korrektur.py (Korrekturlogik, Korrektur-CSV) und tests/test_eigentuemer_tab.py (Sitzung, Korrektur im Tab).

# Schritt Wird geprüft durch Ebene
2 Sitzung beginnen: leeres Fenster mit Rahmen, nie Vollbild test_sitzung_beginnen_oeffnet_leeres_fenster_mit_rahmen, test_normales_fenster_in_standardgroesse Mock
2 Lage des Fensters gilt für die nächste Sitzung test_lage_gilt_fuer_naechste_sitzung, test_gemerkte_lage_wird_wiederhergestellt, test_unbrauchbare_lage_ergibt_standardgroesse Mock
3 „Daten anzeigen“ beginnt bei Bedarf die Sitzung test_daten_anzeigen_beginnt_sitzung_bei_bedarf, test_daten_anzeigen_gibt_auswahl_weiter Mock
3 Ohne Auswahl nur ein Hinweis test_daten_anzeigen_ohne_auswahl Mock
3 Inhalt: Name, Anschrift, E-Mail; mehrere Einträge test_name_anschrift_email, test_mehrere_eintraege_getrennt Mock
3 Keine internen Angaben für den Eigentümer test_keine_internen_angaben Mock
3 Fehlende E-Mail ausdrücklich nennen test_fehlende_email_wird_genannt Mock
5 Nur echte Änderungen, Leeren zählt test_nur_echte_aenderungen, test_feld_leeren_ist_aenderung, test_feldwerte Mock
5 Korrektur festhalten und sofort anzeigen test_korrektur_wird_festgehalten_und_angezeigt, test_wende_an Mock
5 Unverändert oder abgebrochen: nichts schreiben test_ohne_aenderung_nichts_schreiben, test_abbruch_nichts_schreiben Mock
5 Korrektur-CSV: Kopfzeile, BOM, anhängen test_neue_datei_mit_kopfzeile_und_bom, test_anhaengen_ohne_zweite_kopfzeile, test_ohne_aenderung_keine_datei Mock
5 Pfad neben der Eigentümerdatei, sonst Rückfrage test_textdatei_provider, test_ogr_provider, test_keine_csv, test_vorschlag_neben_der_eigentuemerdatei, test_ohne_csv_quelle_wird_gefragt Mock
5 Schreibfehler test_schreibfehler_wird_weitergereicht, test_schreibfehler_warnung_und_anzeige_unveraendert Mock
5 Ohne Anzeige keine Korrektur test_ohne_anzeige_keine_korrektur Mock
5 Pfad der Korrektur-Datei unter den Knöpfen test_ohne_eigentuemerdatei, test_pfad_neben_der_eigentuemerdatei, test_ohne_csv_quelle_wird_abgefragt, test_gewaehlter_pfad_wird_angezeigt Mock
6 Anzeige leeren, Fenster bleibt offen test_anzeige_leeren_laesst_fenster_offen, test_leer_nur_platzhalter Mock
7 Sitzung beenden bzw. Fenster von außen geschlossen test_sitzung_beenden_schliesst_fenster, test_von_aussen_geschlossen_beendet_sitzung Mock
— Keine Personendaten auf der Konsole test_schreibt_nichts_auf_die_konsole Mock
— Sieht das in QGIS richtig aus, auf zwei Bildschirmen? manueller Test manuell

Ebene: Mock (ohne QGIS, Sekunden) · QGIS (gegen echtes QGIS) · manuell (Mensch in QGIS).

Fachliche Sonderfälle

Sonderfall Kommt vor bei Wird geprüft durch
Nur ein Bildschirm (Notebook) Termin ohne zweiten Monitor, Ausprobieren test_normales_fenster_in_standardgroesse (immer mit Rahmen, verdeckt QGIS nie ausweglos)
Eheleute oder Miteigentümer erscheinen gemeinsam mehrere Einträge auf einmal anzeigen und einzeln korrigieren test_mehrere_eintraege_getrennt, test_korrektur_wird_festgehalten_und_angezeigt
Eigentümer hat keine E-Mail hinterlegt häufig; soll beim Termin ergänzt werden test_fehlende_email_wird_genannt
Neue Anschrift mit Komma („Am Anger 3, Haus B“) Zusatz zur Hausnummer test_neue_datei_mit_kopfzeile_und_bom
Eigentümerdatei liegt in einem schreibgeschützten Ordner Export auf einem Netzlaufwerk ohne Schreibrecht test_ohne_csv_quelle_wird_gefragt (Rückfrage), test_schreibfehler_warnung_und_anzeige_unveraendert
Sonderzeichen oder spitze Klammern in den Daten Firmennamen test_werte_werden_maskiert

Bewusst nicht getestet

Was Warum Wie stattdessen abgesichert
Wiederherstellen der Lage auf dem zweiten Bildschirm braucht echte Bildschirme; im Mock-Modus gibt es keine Aufruf mit Attrappe geprüft, manueller Test mit zwei Bildschirmen
Korrekturdialog mit echten Eingabefeldern im Mock-Modus gibt es keine Widgets; die Vorbelegung (feldwerte) und die Auswertung sind als reine Funktionen getestet manueller Test
Schriftgröße und Lesbarkeit der Anzeige Geschmack und Bildschirmgröße manueller Test im Termin

Bekannte Lücken

Lücke Auswirkung Issue
Wiederherstellen der Lage in der nächsten Sitzung ist in QGIS noch nicht bestätigt Das Fenster erscheint dann wieder auf dem Hauptbildschirm und muss erneut verschoben werden – lästig, aber gefahrlos Verfahrensgebiet #56
Die Lage wird nur bis zum Neustart von QGIS gemerkt nach jedem Start einmal verschieben bei Bedarf eigenes Issue (QSettings)
Eine neue Suche leert die Anzeige nicht von selbst Wer „Anzeige leeren“ vergisst, zeigt dem nächsten Eigentümer noch die vorherigen Daten bewusst so (Bearbeiter entscheidet); bei Bedarf eigenes Issue