SAP NetWeaver Gateway-projecten documenteren, testen en valideren

Met SAP NetWeaver Gateway kan je systeemgegevens van SAP toegankelijk maken op mobiele apparaten. API’s creëren is dan wel eenvoudig, het verkrijgen van zakelijke validatie is best lastig. API’s hebben immers geen GUI’s. 

 

Door Geert-Jan Klaps

In deze blog bekijken we drie populaire oplossingen: SAP NetWeaver Gateway Client, Postman Collections en OpenAPI. Elk van deze opties heeft zijn beperkingen. Denk dan bijvoorbeeld aan het ontbreken van de mogelijkheid om info te combineren of om SAP NetWeaver Gateway-services te testen. Maar geen zorgen: TheValueChain bedacht een oplossing.

 

SAP NetWeaver Gateway Client

De standaardmanier om een API te valideren is het creëren van testcases, geclusterd in testgroepen, in SAP NetWeaver Gateway Client.

Figure 1: SAP Netweaver Gateway Client

Als functionele analist kan je een testcase selecteren, de vooraf gedefinieerde aanvraag aanpassen aan het testscenario en de API-call uitvoeren.

Figure 2: SAP Netweaver Gateway Client(2)

Deze aanpak heeft tal van voordelen, zoals:

  • Het is een standaard SAP-oplossing.
  • Er gebeurt een automatische CSRF-tokenverwerking voor het aanpassen van aanvragen.
  • Je kan ondersteunde entiteitenverzamelingen automatisch ophalen.
  • Je kan makkelijk alle beschikbare URI-opties selecteren uit het hoofdmenu.

Toch zijn er ook enkele nadelen:

  • Het gaat om een eerder technische aanpak: elk basisscenario moet voorbereid worden door de developer.
  • Een functionele analist of gebruiker moet de OData-metadata begrijpen om zelf aanvragen te creëren voor cases die niet voorbereid werden door de developer.
  • Het is slechts een testtool, geen documentatietool. 

 

Postman Collections

Postman is een praktische tool om REST API’s te testen. Je kan er voor je eigen gebruiksgemak ook API-calls mee organiseren in collecties. De gratis versie heeft echter een limiet van 20 aanvragen. Postman verwerkt bovendien niet automatisch CSRF-tokens om aanvragen te wijzigen. 

Om dit te omzeilen kan je als gebruiker een Postman-omgeving en testcases voor de CSRF-tokenaanvraag creëren. Maar dan moet je nog steeds manueel de aanvragen uitvoeren voordat je een aanvraag wijzigt.

Voordelen van Postman:

  • De tool werkt intuïtiever dan SAP NetWeaver Gateway Client.
  • Je kan makkelijk aanvragen groeperen in collecties en mappen.

Nadelen van Postman:

  • Er is geen automatische CSRF-tokenverwerking. 
  • Het delen van aanvragen is beperkt in de gratis versie.
  • Dit is slechts een testtool, geen documentatietool.

 

OpenAPI Documentation

OpenAPI wordt vaak gebruikt voor API-documentatie. Het komt van pas om API-functionaliteiten uitgebreid te beschrijven en te documenteren, met gebruik van JSON of YAML. Een tool zoals Swagger UI laat je toe om interactieve documentatie aan te maken die het voor gebruikers ook mogelijk maakt om elke functionaliteit van API te testen.

Figure 3: OpenAPI Documentation

Toch is er geen standaardmanier om een geldig OpenAPI JSON- of YAML-bestand te creëren uit een SAP NetWeaver Gateway-service. Dat maakt deze manier van documenteren vrij lastig, ingewikkeld en tijdrovend.

OpenAPI heeft wel enkele handige kenmerken zoals:

  • een universele manier om een REST-service te beschrijven
  • interactieve documentatiemogelijkheden
  • de mogelijkheid om het te importeren in diverse API-beheertools zoals SAP Cloud Platform API Management en Azure API Management

De testmogelijkheden werken spijtig genoeg niet omwille van het CORS-beleid (Cross-Origin Resource Sharing). Er is geen standaardmanier om CSRF-tokens te verwerken om aanvragen te wijzigen.

 

Onze oplossing: embedded Swagger UI

Je merkt het: geen van de vermelde oplossingen kan tegelijk dienstdoen als testtool en als documentatietool voor SAP NetWeaver Gateway-services. De beste optie in dat geval? OpenAPI Documentation met Swagger UI.

Bij TheValueChain ontwikkelden we een oplossing om de beperkingen te omzeilen door een embedded Swagger UI te creëren in SAP. Deze tool ondersteunt zowel V2 als V4 OData-services, zet metadata automatisch om in OpenAPI JSON-formaat en laat functionele analisten en gebruikers toe om interactieve documentatie te genereren én om API’s te testen en te valideren. Ideaal dus.

Meer weten over onze UI-oplossingen op maat?

Geert-Jan Klaps | TheValueChain

Meer weten?

Neem voor meer informatie en het gebruik van onze ruime ervaring in implementaties, ondersteuning en het bouwen van extra add-ons contact met ons op.