Wat is workflowtesten bij softwaretesten? met voorbeelden

⚡ Slimme samenvatting

Workflowtesten bevestigen dat elke reeks stappen binnen een applicatie nog steeds het bedrijfsproces weerspiegelt waarvoor deze is ontwikkeld. Hierbij wordt elke fase, overdracht en afhankelijkheid gecontroleerd, van de eerste actie tot het uiteindelijke resultaat.

  • 🔄 Definitie: Een workflow is een reeks taken die in verschillende fasen tot één gewenst resultaat leiden.
  • 🏢 Bedrijfsafstemming: Elke geteste sequentie moet overeenkomen met het proces dat is beschreven in het document met bedrijfsvereisten.
  • 🧩 Domein: De testdekking omvat zowel integratietests als systeemtests voor elke build.
  • 📅 Vier fasen: De fasen van conceptontwikkeling, uitwerking, constructie en transitie vereisen elk een andere testfocus.
  • 👥 Rollen: Testengineers, componentengineers, integratietesters en systeemtesters delen het werk.
  • 🆚 Grenzen: End-to-end testen omvat systemen, terwijl workflowtesten zich richten op één specifiek bedrijfsproces.
  • Praktijk: Geef prioriteit aan omzetkritische processen, gebruik realistische gegevens en voer hertesten uit telkens wanneer het proces verandert.

Workflowtesten uitgelegd aan de hand van bedrijfsprocesstappen, rollen en voorbeelden.

Wat is workflowtesten?

Workflowtesten Workflowtesten is een vorm van softwaretesten waarbij wordt gecontroleerd of elke softwareworkflow het betreffende bedrijfsproces nauwkeurig weergeeft. Een workflow is een reeks taken die een gewenst resultaat opleveren en bestaat meestal uit meerdere fasen of stappen. Voor elk bedrijfsproces wordt het testen van deze opeenvolgende stappen workflowtesten genoemd.

Het onderscheid dat ertoe doet, is de reikwijdte. Een enkele testcase Een workflowtest vraagt ​​of een bepaalde functie het juiste antwoord geeft. Een workflowtest vraagt ​​of tien van die functies, uitgevoerd in de volgorde waarin een echte gebruiker ze volgt, nog steeds het resultaat opleveren dat het bedrijf verwacht. Om die reden hoort workflowtesten thuis bij de procesgerichte onderdelen van de test. soorten softwaretesten catalogus in plaats van met technieken op eenheidsniveau.

Voorbeeld van workflowtest

Controleer bijvoorbeeld of het systeem op het platform van de gebruiker kan worden geïnstalleerd en of het correct functioneert.

Een beter voorbeeld is een online bestelling. De klant voegt een artikel toe aan het winkelmandje, voert een kortingscode in, selecteert een bezorgoptie, betaalt en ontvangt een bevestigingsmail, terwijl het magazijn een orderverzamelinstructie ontvangt. Elk van deze stappen kan afzonderlijk succesvol zijn, maar toch als geheel mislukken: de korting wordt mogelijk niet verwerkt na de betaling, of het bericht van het magazijn verlaat de wachtrij mogelijk nooit.

Het testen van workflows gebeurt in fasen. Zo voer je workflowtesten uit.

  • OpstartfaseDeze fase omvat de initiële testplanning en het testen van het prototype.
  • UitwerkingsfaseDeze fase omvat het vaststellen van de basiswaarden voor de testarchitectuur.
  • BouwfaseDeze fase omvat uitgebreide tests bij elke build.
  • OvergangsfaseDeze fase omvat regressietests en de oplossingen opnieuw testen.

Hoe voer je workflowtesten uit?

Het bovenstaande fasemodel beschrijft wanneer het werk plaatsvindt. De onderstaande volgorde beschrijft wat een tester daadwerkelijk doet binnen elk van die fasen.

  1. Breng het bedrijfsproces in kaart. Breng de workflow exact in kaart zoals die in de praktijk werkt, inclusief elk beslissingsmoment, goedkeuring en overdracht tussen afdelingen. Een businessanalist is doorgaans de snelste manier om een ​​nauwkeurige kaart te maken. bedrijfsanalist De documentatie dient als referentiepunt voor de controle van de kaart.
  2. Stel instap- en uitstapcriteria in. Leg vast in welke toestand het systeem zich moet bevinden voordat de workflow start en in welke toestand het bewijst dat de workflow is voltooid. Zonder beide gegevens zijn testers het oneens over de vraag of een run geslaagd is.
  3. Ontwerp de testgevallen. Schrijf één case per pad door de workflow, niet één per scherm. Nummer de stappen, geef het verwachte resultaat voor elke stap aan en geef elke case een unieke identificatiecode, zodat defecten kunnen worden opgespoord. tracterug naar een pad.
  4. Bereid realistische testgegevens voor. Hergebruik geanonimiseerde, op de productie gebaseerde gegevens in plaats van verzonnen waarden. Kortingscodes, belastingregels en adresformaten zijn veelvoorkomende voorbeelden waar synthetische data echte gebreken verbergen.
  5. Voer eerst het primaire pad uit. Controleer of de workflow volledig is afgerond voordat er opzettelijk iets wordt verbroken. Een fout op dit punt maakt elk negatief resultaat dat daarop volgt ongeldig.
  6. Breek de ketting opzettelijk. Een proces halverwege afbreken, een ongeldige waarde invoeren op een beslissingspunt, een sessie laten verlopen en een goedkeuring afwijzen. De interessante fouten zitten in deze onderbroken paden, niet in het primaire pad.
  7. Rapporteren, corrigeren en opnieuw testen. Registreer elk defect bij de stap die het heeft veroorzaakt en voer vervolgens de hele workflow opnieuw uit na de correctie. Een gecorrigeerde stap verplaatst de fout vaak één stap verder in de keten.

Stabiele workflows die bij elke release worden herhaald, zijn de beste kandidaten voor automatisering, omdat dezelfde stappen in dezelfde volgorde elke keer identiek worden uitgevoerd en het script zichzelf binnen enkele cycli terugverdient.

Wie gaat de workflowtesten uitvoeren?

Het testen van workflows is een gezamenlijke taak, omdat geen enkele rol het hele proces overziet. Vier rollen dragen de last, elk met hun eigen verantwoordelijkheden.

  • Test-ingenieur
    • Plan testdoelen en planning
    • Testgevallen en procedures definiëren
    • Evalueer testresultaten
  • Componenteningenieur
    • Ontwikkeling van testcomponenten
    • Automatiseer een deel van de testprocedures
  • Integratietester
  • Systeemtester

Wat te testen in een workflow

Softwareworkflows worden gedocumenteerd in het document met bedrijfsvereisten, en dat document is de bron van waarheid voor de testdekking. Workflowtesten omvatten ook onderdelen van systeem- en integratietesten.

Een volledige controle van een workflow omvat meer dan alleen de schermen die de gebruiker ziet.

  • Volgorde: De stappen worden uitgevoerd in de gedocumenteerde volgorde en stappen kunnen niet worden overgeslagen of in een andere volgorde worden herhaald.
  • Gegevensoverdracht: Waarden die vroeg in de keten worden ingevoerd, blijven ongewijzigd behouden tot de laatste stap en tot elk daaropvolgend systeem.
  • Rollen en machtigingen: Elke stap is alleen beschikbaar voor de rol die bevoegd is om deze uit te voeren.
  • Onderbroken paden: Annulering, time-out, afwijzing en opnieuw proberen laten de workflow in een gedefinieerde staat achter.
  • Artefacten: Het workflow-testmodel omvat testgevallen, testprocedures, testcomponenten en testsubsystemen, zodat elk van deze onderdelen achtereenvolgens wordt geverifieerd.
  • Kennisgevingen: E-mails, waarschuwingen en berichten in de wachtrij worden eenmaal verzonden, met de juiste inhoud, in de juiste stap.

Workflowtesten versus end-to-end testen versus systeemtesten

Deze drie technieken overlappen elkaar voldoende om verwarring te kunnen veroorzaken, maar ze beantwoorden wel verschillende vragen. De tabel geeft de grenzen aan.

Aspect Workflowtesten End-to-end testen Systeem testen
Vraag beantwoord Sluit de software aan op de bedrijfsprocessen? Werkt het hele traject correct in alle aangesloten systemen? Voldoet het samengestelde systeem aan de eisen?
dekkingseenheid Eén bedrijfsproces, stap voor stap. Eén gebruikerstraject, van front-end tot back-end. De complete applicatie-build
Primaire referentie Document met zakelijke vereisten Gebruikersreis in kaart Systeemvereistenspecificatie
Typische eigenaar Test engineer met input van een business analyst Automatiserings- of QA-ingenieur Systeemtester

In de praktijk is een workflowtest vaak de specificatie en end-to-end test is opgebouwd uit, terwijl systeem testen zorgt voor de stabiele build waarop de workflow draait.

Beste praktijken en veelvoorkomende uitdagingen

Teams die baat hebben bij het testen van workflows, volgen doorgaans dezelfde kleine set gewoontes.

  • Geef prioriteit aan de werkprocessen die inkomsten- of regelgevingsrisico's met zich meebrengen, boven de zeldzame processen.
  • Beschrijf elke stap en het verwachte resultaat in duidelijke, ondubbelzinnige taal.
  • Zorg voor een herbruikbare, realistische testdataset, zodat de resultaten in verschillende omgevingen vergelijkbaar blijven.
  • Test elke workflow met geldige en ongeldige invoer op elk beslissingspunt.
  • Werk de testgevallen bij zodra het onderliggende bedrijfsproces verandert.

De terugkerende obstakels zijn net zo voorspelbaar.

  • Niet-gedocumenteerde processen: De workflow zit in iemands hoofd, dus testers valideren aan de hand van een aanname.
  • Lange uitvoeringstijden: Een workflow met goedkeuringsprocedures kan uren duren, waardoor de frequentie waarmee deze handmatig wordt uitgevoerd beperkt is.
  • Omgevingsafwijking: De systemen verderop in de keten zijn vastgelopen of verouderd, en defecten komen pas tijdens de productie aan het licht.
  • Kwetsbare automatisering: Scripts die gekoppeld zijn aan de schermindeling, worden onderbroken wanneer de interface verandert, zelfs als het proces zelf niet verandert.
  • Gegevensconflicten: Parallelle uitvoeringen verwerken dezelfde gegevens, wat leidt tot fouten die op productdefecten lijken.

Veelgestelde vragen

Het is functioneel. De techniek beoordeelt of de sequentie het gespecificeerde bedrijfsresultaat oplevert, niet hoe snel of hoe betrouwbaar dit gebeurt – die vragen hebben betrekking op prestaties en betrouwbaarheid. herstel testen.

AI-modellen lezen het eisenpakket en stellen één scenario per pad voor, inclusief de onderbroken vertakkingen die teams doorgaans over het hoofd zien. De output moet nog steeds worden beoordeeld, omdat een model niet kan weten welke paden een reëel bedrijfsrisico met zich meebrengen.

Copilot en vergelijkbare agentische assistenten genereren snel paginaobjecten, stapdefinities en beweringen vanuit een geschreven workflow. Ze besparen tijd.ping In plaats van na te denken: de volgorde van de tests, de testgegevens en de definitie van een geslaagde test blijven de verantwoordelijkheid van de tester.

Het document met de bedrijfsvereisten moet eerst worden opgesteld, daarna het procesdiagram en eventuele goedkeuringsmatrices. TracHet is niet voldoende om je alleen op een gebruikersverhaal te richten, omdat een verhaal zelden de volledige reeks stappen beschrijft.

Nadat de build is geïntegreerd en stabiel is, wijzen eventuele fouten op het proces zelf in plaats van op half aangesloten componenten. Het eerder uitvoeren van tests veroorzaakt ruis; het uitvoeren ervan pas aan het einde laat geen tijd over om de gevonden problemen op te lossen.

De betreffende gevallen worden herschreven vóór de volgende run, niet verwijderd. Een gewijzigde goedkeuringsstap of een nieuw beslissingspunt heeft meestal gevolgen voor meerdere vervolggevallen, waardoor het hele traject opnieuw wordt doorlopen in plaats van dat er op één plek een oplossing wordt gevonden.

Het aantal afgelegde paden ten opzichte van het aantal gedocumenteerde paden, het aantal gevonden defecten per workflow en het aandeel van bedrijfskritische processen met een geautomatiseerde uitvoering. Het pure aantal testgevallen zegt weinig, omdat één workflow tientallen triviale gevallen kan bevatten.

Draadtesten Het volgt één functionele lijn door de geïntegreerde componenten en is daarmee de technische tegenhanger. Workflowtesten verwoorden hetzelfde idee in zakelijke termen. traceen gedocumenteerd proces gebruiken in plaats van een codepad.

Vat dit bericht samen met: