Zum Inhalt springen

Contract-Test

Ein Test, der vereinbarte Nachrichten zwischen einem Verbraucher und einem Anbieter einer Schnittstelle prüft.

Softwarequalität

Die gemeinsame Schnittstellenerwartung prüfen

Ein Contract-Test prüft, ob Nachrichten zwischen Anwendungen dem vereinbarten Schnittstellenvertrag entsprechen. Verbraucher und Anbieter können dabei getrennt getestet werden. Bei verbrauchergetriebenen Verträgen werden tatsächlich benötigte Interaktionen festgehalten und auch gegen den Anbieter geprüft.

Im erfundenen Beispiel benötigt eine Berichtsansicht orderId und status aus einer Auftragsantwort. Der Test prüft die vereinbarte Antwort für diesen Fall; passende Fehlerfälle gehören dazu, wenn der Verbraucher darauf angewiesen ist. Ein bloß simulierter Anbieter ohne Gegenprüfung bestätigt die echte Schnittstelle nicht. Ein Contract-Test beweist außerdem weder die korrekte Speicherung eines Auftrags noch wirksame Zugriffstrennung oder den vollständigen Benutzerablauf. Dafür sind ergänzende Prüfungen nötig.

Quellen