Zum Inhalt springen

Unabhängiges F&E-Projekt · Köln

Verifikation

Was jede Testart belegen kann und was kein Test begründet.

Nicht normativ

Companion-Version
1.0
Bezug zu COADF Core
2.2
Status
Aktuell
Zuletzt geprüft

Was jede Testart belegen kann

Eine Eigenschaft wird auf der Ebene verifiziert, die sie sehen kann. Ein Unit-Test sieht kein Deployment; ein Admission-Test sieht nicht die Antwort eines Modells. Die Tabelle nennt für jede Ebene, was sie belegt, was sie nicht belegen kann und wo der Companion sie einsetzt.

Ebenen der Verifikation, was jede belegt, was jede nicht belegen kann und wo der Companion sie einsetzt
EbeneBelegtKann nicht belegenEingesetzt für
Unit-TestEine Komponente weist zurück, was sie zurückweisen mussDass die Komponente auf dem Pfad liegtGrenzschemata, Verifikationsfabriken, Policy-Regeln
ArchitekturtestDer Abhängigkeitsgraph enthält keine verbotene KanteDatenpfade, die keine Importe sindProbabilistische Grenze, Isolierung von Standards
VertragstestBeide Seiten stimmen in einer Struktur überein, einschließlich der geforderten HerkunftsangabenDass beide Seiten in kompatiblen Versionen deployt sindVerträge für Vorschläge und Entscheidungen
IntegrationstestDie Eigenschaft gilt gegenüber der echten AbhängigkeitVerhalten unter einer anderen KonfigurationBerechtigungen der Prüfspur, Weitergabe des Kontexts, Revisionen von Regeln
End-to-End-TestEin verbotener Zustand kann keine Ausgabe erreichenPfade, die der Test nicht durchläuftNicht verifizierte Werte, der Veröffentlichungs-Fence
Deployment- oder Admission-TestDie Plattform weist einen Workload zurück, der eine Regel verletztAlles innerhalb des WorkloadsFixierte Images, benannte Revisionen, Netzwerkisolation
Manueller NachweisEine namentlich benannte Person hat ein schriftlich festgelegtes Verfahren ausgeführtDass es erneut ausgeführt wirdLizenzprüfungen, Wiederholungen historischer Entscheidungen

Beide Richtungen: der positive Pfad und der Zahnbeweis

Jede Eigenschaft im Companion hat eine positive Prüfung (so sieht Bestehen aus) und eine negative (dieser Fehler, gezielt eingebaut, wird zurückgewiesen). Eine Suite, die nur die positive Hälfte hat, kann jede Einschränkung verlieren und bleibt trotzdem grün. Erst die negative Hälfte zeigt, dass die Prüfung auf dem Pfad liegt.

Die fünf Schritte eines Zahnbeweises stehen auf der Seite Ausführbare Fences, und das Profil für Python und FastAPI führt sie aus: Ein eingebauter Import bricht einen Vertrag, eine gelöschte Einschränkung färbt einen Test rot, ein eingebauter Sentinel lässt den Veröffentlichungs-Fence scheitern, und jede Wiederherstellung wird Byte für Byte verglichen.

Zählen, was gelaufen ist

Ein Ergebnis ist nicht „grün“. Es lautet: welche Prüfungen gelaufen sind, wie viele Assertions ausgeführt wurden, in welchem identifizierten Lauf und mit welchem Ausgang. Das Modell des COADF-Kontrollberichts sagt dasselbe über Kontrollen: Eine übersprungene Prüfung, ein früherer Erfolg oder eine Auswahl, die überhaupt keine Tests ausgeführt hat, ist keine aktuelle Verifikation.

  • Eine Testauswahl, auf die nichts passt, kann erfolgreich sein. Die Anzahl muss geprüft werden.
  • Ein Test, der mangels Datenbank übersprungen wird, ist kein bestandener Test. Er wird als nicht ausgeführt gemeldet.
  • Ein übersprungener Job kann als erfolgreich gemeldet werden. Erforderlich ist die Prüfung, die sich nicht überspringen lässt.

Wenn eine Person die Kontrolle ist

Manche Kontrollen hält eine Person, die ein schriftlich festgelegtes Verfahren ausführt: eine Lizenzprüfung, die Wiederholung stichprobenartig ausgewählter historischer Entscheidungen, eine Entscheidung beim Merge. Sie werden als manuell gemeldet, mit dem Namen der Person und dem Verfahren, niemals als automatisiert. Eine ehrlich gemeldete manuelle Kontrolle ist mehr wert als eine nachlässig gemeldete automatisierte.

Was Verifikation nicht begründet

Tests begründen, dass Tests bestanden wurden. Sie begründen weder die Einhaltung regulatorischer Anforderungen noch eine Zertifizierung oder ein Verfahren zur Bewertung der Übereinstimmung mit Rechtsvorschriften, und auch eine vollständige Suite für jede Eigenschaft in diesem Companion begründet nichts davon. Automatisierte Wächter über Text und Code sind notwendig und nicht hinreichend: Sie sehen keinen Mechanismus, der sich in Kontrollfluss, umbenannten Bezeichnern oder der Geometrie einer Abbildung ausdrückt, und menschliche Prüfung bleibt Teil der Verifikation.

COADF Engineering Companion 1.0 · nicht normativ · bezieht sich auf COADF Core 2.2

Veröffentlichungsrechte vorbehalten. Für den COADF Engineering Companion 1.0 und seine Referenzbeispiele wird derzeit keine öffentliche Lizenz erteilt.

Schutzrechts- und Veröffentlichungsstatus