VNG-Realisatie / api-test-platform

6 stars 3 forks source link

Testcollectie fixtures implementatie #342

Open Spacegod007 opened 4 years ago

Spacegod007 commented 4 years ago

Binnen mijn projectteam wordt op het moment aan een Java implementatie voor Common Ground gewerkt. Hierbij maken we gebruik van de Postman collectie om de implementatie te testen. Op de Github pagina van de collectie zijn enkele fixture.json bestanden aanwezig.

Hierover hebben wij de vraag hoe deze in de applicatie komen voor het uitvoeren van de testen.

HenriKorver commented 4 years ago

@Spacegod007 Ik begrijp je vraag niet. Kun je iets meer context en/of details geven?

Spacegod007 commented 4 years ago

De vraag betreft de postman testen die op deze Github repository staan: https://github.com/VNG-Realisatie/gemma-postman-tests

Hier staat een uitleg over hoe de Postman testen geimporteerd worden. Verder staan hier enkele bestanden die fixture data bevatten (fixture_ac.json en fixture_ztc.json). Als ik me niet vergis, gaat het hier over de modellen die voor de testen gebruikt worden.

Wanneer de postman testen worden uitgevoerd, lijkt het alsof verwacht wordt dat deze gegevens binnen het systeem vooraf al aanwezig zijn. Hiervanuit is de vraag ontstaan hoe deze gegevens in de applicatie/database terecht komen, zodat deze tijdens het uitvoeren van de testen gebruikt worden.

HenriKorver commented 4 years ago

@Spacegod007 Dank voor de aanvullende context. Ik zie in ieder geval dat de informatie op

https://github.com/VNG-Realisatie/gemma-postman-tests

verouderd is.

@alextreme @stevenbal @joeribekker Kan één van jullie dit rechtzetten?

Momenteel zijn er drie testscripts die je kunt gebruiken voor het testen van de ZGW API's:

  1. Testscript dat alleen het gedrag van de OAS test, zie https://api-test.nl/server/1/testscenario/12/
  2. Testscript dat alleen het aanvullende gedrag test zoals beschreven in de standaard (https://api-test.nl/server/1/testscenario/8/
  3. Testscript dat de twee eerdere testscripts combineert (full test suite) (zie https://api-test.nl/server/1/testscenario/19/)

Als het goed is zijn deze testscripts "self contained", m.a.w. ze voegen zelf waar nodig de testdata toe.

Om te beginnen raad ik je aan te beginnen met het eerste testscript (zie 1) dat het lichts is.

stevenbal commented 4 years ago

@Spacegod007 de fixtures die in https://github.com/VNG-Realisatie/gemma-postman-tests staan, waren eigenlijk puur bedoeld om snel de benodigde configuratie in te kunnen laden in een lokaal draaiende referentieimplementatie (dus de Django implementatie). Deze fixtures zijn daarom niet compatible met jullie Java implementatie, omdat de database tabellen er waarschijnlijk compleet anders uitzien.

Dus ik denk dat jullie zelf fixtures zullen moeten maken (als jullie die nodig hebben) die de nodige configuratie inladen. Waarschijnlijk kunnen jullie de meeste informatie (wat betreft de relaties tussen de API's) hier vinden: https://vng-realisatie.github.io/gemma-zaken/standaard/. Als hier vragen of opmerkingen over zijn, kunnen jullie terecht bij deze repo: https://github.com/VNG-Realisatie/gemma-zaken.

Wat in ieder geval nodig is, is dat de verschillende API's geconfigureerd zijn om met elkaar te kunnen communiceren, en dat er client credentials zijn met superuser rechten (die zullen dan gebruikt worden door de Postman tests), maar hoe dat in jullie systeem eruit zou komen te zien weet ik niet