2016-06-09 15 views
1

Gibt es eine Möglichkeit, Verbraucherverträge in Komponententests für Mikrodienste zu prüfen? Ich weiß, dass wir die Pact-Bibliothek in Java verwenden können, während wir Integrationstests über JUnit durchführen. Aber ich frage mich, ob es einen Weg gibt, das Gleiche mit Komponententests zu machen?Verbraucherbezogene Verträge

+0

ist Ihr Microservice 1 Einzelklasse? Wenn ja, dann ja. Die Verwendung der Pact-Bibliothek mit JUnit ist Komponententests. Wenn Ihr Microservice eine Reihe von Klassen ist, dann ja, es wird Integrationstest sein :-) –

Antwort

2

Spring Cloud Contract ist ein weiteres praktisches Tool, das ich vorschlagen kann. Es ist gut dokumentiert und die Schöpfer der API beantworten Ihre Frage schnell in verschiedenen Umgebungen (z. B. Gitter, Github). Der Rahmen arbeitet sowohl auf der Erzeuger- als auch auf der Verbraucherseite. Sie stellt sicher, dass die API mit den auf der Herstellerseite vom Verbraucher definierten Verträgen kompatibel ist. Auf Herstellerseite werden Tests automatisch generiert. Die Verträge werden auch auf trickreiche Weise mit den Verbrauchern geteilt. Sie werden an Ihr lokales Artefakt-Repository (z. B. Nexus, Artifactory) übertragen, und Verbraucher können über das Repo auf die Verträge zugreifen. Danach kann der Konsument auch prüfen, ob es mit dem auf dem Producer geschriebenen API funktioniert oder nicht. Es kann auch im Publish-Subscribe-Mechanismus verwendet werden. Tolles Werkzeug, benutze es.

Übrigens; Sie können Ihre Bohnen verspotten und Vertragskompatibilität auf eine Weise testen, die Sie wie Komponententest aussieht, aber ich verstehe nicht, warum Sie darauf bestehen, mit Komponententest zu testen.

Grüße ...

Verwandte Themen