Academy

Het bewijs van SAP zit in het proeven

June 2, 2023

Joke Gijsbrechts

Facebook logo in yellowLinkedIn logo in yellow

Iets kan pas goed of slecht worden bevonden nadat het is uitgeprobeerd of gebruikt. De beste manier om de kwaliteit van een SAP-systeem te testen is dus door het te “proeven” in plaats van het langs buitenaf te bewonderen.

Eerst het belangrijkste. Wat is SAP?

System Applications and Products, beter bekend als SAP, is een geïntegreerd of gecentraliseerd ERP-systeem (Enterprise Resource Planning) om de belangrijkste bedrijfsprocessen efficiënt te laten werken. Het bestaat uit verschillende volledig geïntegreerde modules die vrijwel elk aspect van de bedrijfsvoering dekken. Ze bieden hun klanten de mogelijkheid om te interageren met alle gangbare bedrijfsdatabases voor een breed scala aan functionele en technische modules. Bijvoorbeeld Customer Relationship Management (CRM), Financial Management (FI), Human Capital Management (HCM), Product Lifecycle Management (PLM) en Supply Chain Management (SCM). Daarnaast biedt het tools voor bedrijfsanalyse om bedrijven te helpen hun processen te stroomlijnen en concurrerender te worden.

Simpel gezegd: het is software en hardware om een bedrijf te runnen.

SAP is nummer 1 op de ERP-markt wat betreft inkomsten en nummer 2 na Microsoft als het gaat om de totale inkomsten uit bedrijfsapplicaties. Sinds 2018 heeft SAP meer dan 437.000 klanten in 180 landen. Het kan zowel on-premises als in de cloud worden ingezet en is geschikt voor zowel grote als kleine en middelgrote ondernemingen (MKB). Er zijn mobiele apps voor zowel Android- als iOS-systemen.

Testen van SAP-systemen

(SAP) testvaardigheden

De testvaardigheden die je nodig hebt voor het testen van SAP zijn in principe dezelfde als voor het testen van softwareapplicaties. Maar het grote verschil is dat al het harde werk dat je hebt gestoken in het begrijpen en verkrijgen van diepgaande functionele kennis van de softwaremodules en/of systemen, overbodig wordt als je van project of bedrijf wisselt. Bijvoorbeeld: als je van het facturatiesysteem van een telecombedrijf overstapt naar dat van een bank, gebruik je hoogstwaarschijnlijk andere modules, terminologieën en functionaliteiten.

In het geval van SAP is de functionele kennis die je opdoet overdraagbaar en kan die dus gebruikt worden in elk ander SAP-testproject. Als je overschakelt van een testproject voor een SAP financiële module in een telecombedrijf naar een testproject voor een financiële module in een bank, herken je direct de GUI, transactiecodes en standaard business workflows. Natuurlijk moet je de klantspecifieke aanpassingen nog leren, maar dit is alvast een enorm voordeel.

Maintenance

Maintenancetesten zijn een belangrijk onderdeel van SAP-testen. Zodra het systeem is geconfigureerd, aangepast, ingezet en operationeel (live) is, is elke wijziging aan het SAP systeem ‘maintenance’. Bijvoorbeeld toevoegingen van nieuwe features, bugfixes, kernel updates, support pack & stack updates of de implementatie van OSS notities.

Testfasen

Er zijn verschillende lifecycle-methodologieën voor SAP implementatie. Bijvoorbeeld ASAP-implementatie (initiële implementatie en overdracht van legacy-systemen), onderhoudslevenscyclus, upgrade-levenscyclus en aangepaste ontwikkelingslevenscyclus. Wat de lifecycle ook is, de belangrijkste testfasen zijn:

  • Unit- of Componenttesten (UT/CT)
    Ontwikkelaars voeren Unit- of Componenttesten uit op basis van hun standaard unittestregels. Testen van rapporten, interfaces, conversies,verbeteringen, workflows en formulieren (RICEWF) die voornamelijk met SAP-specifieke (ABAP) code zijn ontwikkeld. Inclusief het testen van beveiligingsautorisaties, regels voor gegevensoverdracht, reconciliaties en batch scheduling jobs. Het testen van het Business Warehouse maakt ook deel uit van deze testfase. Dit gebeurt meestal in een ontwikkelomgeving.
  • Systeemtesten (ST) of functionele testen
    Dit zorgt ervoor dat uw SAP implementatie voldoet aan uw bedrijfsvereisten. SAP is een zeer configureerbaar systeem en kan gemakkelijk integreren met interne applicaties of tools van derden. Gezien dit zeer configureerbare en complexe systeem is functioneel testen een must. Het neemt onzekerheid weg over business use cases en zorgt voor kwaliteit. Het omvat het beoordelen van ontwerpdocumenten en het opstellen van testrequirements, testscenario’s en testcases. Meestal wordt dit gedaan door een professionele tester (of team) met een achtergrond in SAP.
  • Integratietesten (CIT/SIT)
    Het testen van gecombineerde componenten (CIT) of modules (SIT) van een SAP systeem om te bepalen of ze correct samenwerken. Er zijn 2 soorten integratietesten: Component- (CIT) en Systeem Integratie Testen (SIT). CIT wordt meestal uitgevoerd in een ontwikkelomgeving, terwijl SIT wordt uitgevoerd in een QA-omgeving met realistische testgegevens.
  • Gebruikersacceptatietesten (UAT)
    UAT garandeert dat het SAP systeem bruikbaar is voor de eindgebruikers. Ze voeren zelfstandig de gebruikersacceptatietestcases uit, waaronder het testen van bedrijfsprocessen, functies, documentatie (bedieningshandleidingen, spiekbriefjes), enzovoort. Door UAT kunnen gebruikers vertrouwd raken met de nieuwe bedrijfsomgeving en volledig eigenaar worden van het systeem.

Soorten testen

De meest gebruikte testtypen bij het testen van SAP systemen zijn:

  • Regressietesten
    We voeren regressietesten uit om ervoor te zorgen dat de nieuwe wijzigingen die worden doorgevoerd geen negatieve invloed hebben op bestaande en werkende code. SAP is een strak geïntegreerd systeem; een enkele stack update, OSS notitie, transport, configuratiewijzigingen of nieuw ontwikkelde interface kunnen een cascade en ernstig effect hebben. Ze worden meestal uitgevoerd door een professionele tester (of team) met behulp van een automatisatietool.
  • Prestatietesten
    Met prestatietesten zorg je ervoor dat het SAP-systeem goed presteert onder de verwachte (hoge) werkbelasting. Het controleert snelheid, schaalbaarheid en stabiliteit door belasting, volume en stress op te nemen,  om knelpunten in het systeem te bepalen. Het doel is om de robuustheid te verbeteren en te helpen bij het implementeren van systemen die hoge belastingsverwachtingen aankunnen, zonder of met weinig prestatieproblemen na de productie. Het omvat het controleren van bedrijfsprocessen die stress kunnen veroorzaken door hoge transactie- of batchvolumes.
    Het helpt bij het voldoen aan SLA’s, het optimaliseren van softwareconfiguratie-instellingen, het verminderen van te hoge uitgaven aan hardware, het certificeren dat het systeem niet crasht of uitvalt tijdens seizoensgebonden hoge belasting en het voorkomt bijbehorende financiële verliezen. Het wordt meestal uitgevoerd met behulp van geautomatiseerdetools zoals NeoLoad, een SAP-gecertificeerde oplossing waarmee Brightest een partnerschap heeft en de expertise om het te implementeren. Daarnaast omvat het samenwerking van basis, database, infrastructuur en een professionele tester (of team) om de resultaten te controleren.
  • Beveiliging testen
    Security Testing verzekert de veiligheid van SAP-systemen. Gebieden met een hoog risico zoals SAP-portaalbeveiliging, netwerkbeveiliging, operationele beveiliging, productbeveiliging, toegangscontrole en broncode worden getest. Hierbij zijn meestal de basis, database, infrastructuur, ontwikkeling en een professionele tester (of team) betrokken.
  • Portabiliteitstesten
    Bij portabiliteitstestenworden de SAP-portals getest op verschillende browsers en worden de bedrijfsprocessen gecontroleerd.

Al deze soorten testen kunnen worden uitgevoerd tijdens elke testfase (hierboven beschreven).

SAP-testcases maken

Het opstellen van testcases voor een SAP-systeem is in principe hetzelfde als voor het testen van een softwaretoepassing. Om effectieve testcases te maken, moet het volgende gedaan worden:

  • Bepalen welke SAP-rol nodig is om de test uit te voeren
  • Bepalen welke SAP-transactie uitgevoerd moet worden voor de testcase
  • De testgegevens definiëren die nodig zijn om de test uit te voeren. En vraag jezelf af of deze aangemaakt moeten worden, door een andere tester gebruikt moet worden, of vergrendeld zijn en niet gewijzigd kunnen worden.
  • Definieer eventuele (potentiële) randvoorwaarden
  • Hebben je peers (andere testprofessionals of zakelijke gebruikers) je testcases beoordeeld?
  • Creëer positieve en negatieve testscenario’s
  • Beschrijf gedetailleerde teststappen om herbruikbaarheid en gemeenschappelijk begrip te verbeteren en om je voor te bereiden op testautomatisering
  • Zorg voor een hoge testcoverage
  • Documenteer defecten zodra ze worden ontdekt (volgens afgesproken regels)

Laten we bijvoorbeeld een testcase ontwerpen om de naam van een medewerker in het SAP-systeem te wijzigen:

Belangrijke opmerking:
SAP is een enorm systeem met eindeloos veel variaties. Het is niet haalbaar of kosteneffectief om alle mogelijke variaties en combinaties van testparameterinvoer in het systeem te controleren. In het bovenstaande voorbeeld zien we dat een tester de verandering in achternaam, geboortedatum, adres, pincode, stad, staat, land, verandering in permanent, tijdelijk, werkadres, etc. kan controleren. Een professionele tester kan teststrategieën en -technieken toepassen om het aantal testcases te verminderen zonder dat dit ten koste gaat van de coverage. Voorbeelden zijn grenswaardeanalyse, equivalentieverdeling en orthogonal arrays. Vaak gecombineerd met automatisatie van testcases.

Geautomatiseerd testen van SAP

Testen is een enorme uitdaging voor een reusachtig systeem als SAP. ASUG heeft een onderzoek gedaan waaruit blijkt dat meer dan 86% van de klanten zich zorgen maakt over risico’s door een gebrek aan uitgebreide tests. Geautomatiseerd testen van SAP-systemen heeft een aantal voordelen :

  • Het eerste en meest waardevolle voordeel is de verbeterde testcoverage.
  • Verder is er een betere kwaliteit en dus minder productie-uitval. Uitval van SAP-productieomgevingen kan een bedrijf miljoenen euro’s kosten!
  • Tot slot neemt de werklast af met elke releasecyclus.

Automatisatietools:
De methodologie en aanpak zijn belangrijker dan de gekozen automatiseringstool. Enkele voorbeelden die me te binnen schieten zijn SAP TAO, eCATT, QTP, Tosca, S/4HANA Cloud Test Automation Tool, jouw eigen ontwikkelde testframework (of dat van Brightest), enz. De keuze van tools voor automatisatie of performancetests voor SAP hangt af van de onderliggende SAP-applicatie die wordt getest.

Conclusie

SAP-testen bieden enorme mogelijkheden en voordelen voor QA professionals en projecten. Brightest is de perfecte partner om te helpen met de uitdagingen en mogelijkheden. Neem contact met ons op voor feedback, vragen of meer informatie.

Laten we samenwerken

Benieuwd hoe ERP-testen jouw organisatie kunnen helpen?

Neem contact met ons op