Wat is END-to-END-testen? E2E-voorbeeld
End-to-end-testen
End-to-end-testen is een softwaretestmethode die volledige software van begin tot eind valideert, samen met de integratie ervan met externe interfaces. Het doel van end-to-end testen is het testen van volledige software op afhankelijkheden, gegevensintegriteit en communicatie met andere systemen, interfaces en databases om een volledig productieachtig scenario uit te voeren.
Samen met het softwaresysteem valideert het ook batch-/gegevensverwerking van andere upstream/downstream-systemen. Vandaar de naam "Eind tot eind". End-to-end-testen worden meestal uitgevoerd na functionele en Systeem testen. Het maakt gebruik van daadwerkelijke productie, zoals gegevens en een testomgeving, om realtime instellingen te simuleren. E2E Testen wordt ook wel genoemd Keten testen.
Waarom end-to-end testen?
End-to-end-testen verifieert de volledige systeemstroom en vergroot het vertrouwen door problemen op te sporen en te vergroten Testdekking van subsystemen. Moderne softwaresystemen zijn complex en onderling verbonden met meerdere subsystemen die kunnen verschillen van huidige systemen. Het hele systeem kan instorten door het falen van een subsysteem, wat een groot risico is dat kan worden vermeden door End-to-End-testen.
End-to-end testproces
Het onderstaande diagram geeft een overzicht van het End to End-testproces.
De belangrijkste activiteiten die betrokken zijn bij end-to-end testen zijn:
- Studie van end-to-end testvereisten
- Installatie van de testomgeving en hardware-/softwarevereisten
- Beschrijf alle systemen en de subsysteemprocessen ervan.
- Description van rollen en verantwoordelijkheden voor alle systemen
- Testmethodologie en standaarden
- End-to-end tracking van vereisten en ontwerp van testcases
- Invoer- en uitvoergegevens voor elk systeem
End-to-end testtool
testRigor
testRigor is een marktleider op het gebied van end-to-end testen. Maak naadloos no-code tests voor Web UI, Native en Hybrid Mobile apps, mobiele browsers en API. Test e-mails en sms, test gedownloade .XLS, .DOC, .PDF etc. bestanden met gemak.
Kenmerken:
- Schrijf no-code-tests in gewoon Engels.
- Web + Mobiel + API-dekking in één test. Ondersteuning voor meerdere platforms en browsers.
- Maak tests 15x sneller vergeleken met Selenium.
- Verminder testonderhoud tot wel 99.5%.
- testRigor is veilig en voldoet aan SOC 2 Type 2.
- Integraties met CI/CD en testcasebeheer.
- Voer duizenden tests uit en behaal binnen 1000 minuten resultaten.
Hoe maak ik end-to-end testcases?
Het End to End Testing Design-framework bestaat uit drie delen
- Bouw gebruikersfuncties
- Voorwaarden opbouwen
- Testcases bouwen
Laten we ze in detail bekijken: -
Bouw gebruikersfuncties
De volgende activiteiten moeten worden uitgevoerd als onderdeel van het bouwen van gebruikersfuncties:
- Noteer de kenmerken van het systeem en de onderling verbonden componenten
- Maak een lijst van de invoergegevens, de actie en de uitvoergegevens voor elk kenmerk of elke functie
- Identificeer de relaties tussen de functies
- Bepaal of de functie herbruikbaar of onafhankelijk kan zijn
Denk bijvoorbeeld aan een scenario waarin u inlogt op uw bankrekening en wat geld overboekt naar een andere rekening van een andere bank (3rdpartijsubsysteem)
- Log in op het banksysteem
- Controleer het saldo op de rekening
- Maak een bedrag over van uw rekening naar een andere bankrekening (3rdpartijsubsysteem)
- Controleer uw laatste rekeningsaldo
- Uitloggen van de applicatie
Bouw voorwaarden op basis van gebruikersfunctie
De volgende activiteiten worden uitgevoerd als onderdeel van de bouwvoorwaarden:
- Het opbouwen van een reeks voorwaarden voor elke gedefinieerde gebruikersfunctie
- Voorwaarden omvatten volgorde, timing en datavoorwaarden
Bijvoorbeeld -Controleren van meer voorwaarden zoals
Login Pagina
- Ongeldige gebruikersnaam en wachtwoord
- Controle met geldige gebruikersnaam en wachtwoord
- Controle van de wachtwoordsterkte
- Controle van foutmeldingen
Saldobedrag
- Controleer het huidige saldo na 24 uur. (Als de overschrijving naar een andere bank wordt verzonden)
- Controleer of er een foutmelding verschijnt als het overboekingsbedrag groter is dan het huidige saldo
Bouw een testscenario
Bouwen aan de Testscenario voor de gedefinieerde gebruikersfunctie
In dit geval,
- Log in op het systeem
- Controle van het banksaldo
- Maak het banksaldo over
Bouw meerdere testgevallen
Bouw een of meer testgevallen voor elk gedefinieerd scenario. Testgevallen kunnen elke voorwaarde als één enkel testgeval omvatten.
Statistieken voor end-to-end-testen
Hieronder staan enkele van de vele metrieken die als voorbeeld van end-to-end-testen worden gebruikt:
- Voorbereidingsstatus testcase: Het geeft de voortgang van de voorbereiding van de testcase ten opzichte van de geplande voortgang
- Wekelijkse testvoortgang Geeft wekelijkse details over het percentage voltooide tests: mislukt, niet uitgevoerd en uitgevoerd ten opzichte van geplande uitvoeringstesten.
- Defectenstatus en details- Het geeft het percentage open en gesloten defecten per week. Ook de verdeling van defecten per week op basis van ernst en prioriteit.
- Beschikbaarheid van omgeving –Totaal aantal uren “up” / Totaal aantal uren per dag gepland voor testen
End-to-end testen versus systeemtesten
Einde om testen te beëindigen | Systeem testen |
---|---|
Valideert het softwaresysteem en de onderling verbonden subsystemen | Valideert alleen het softwaresysteem volgens de vereistenspecificaties. |
Het controleert de volledige end-to-end processtroom. | Het controleert systeemfunctionaliteiten en -functies. |
Alle interfaces en backend-systemen komen in aanmerking voor testen | Functioneel en niet-functioneel testen komen in aanmerking voor testen |
Het wordt uitgevoerd zodra de systeemtest is voltooid. | Het wordt daarna uitgevoerd Integratietesten. |
End-to-end-testen omvat het controleren van externe interfaces, wat complex kan zijn om te automatiseren. Handmatig testen heeft de voorkeur. | Zowel handmatig als geautomatiseerd kunnen worden uitgevoerd voor systeemtests |
Conclusie
Bij software-engineering is end-to-end testen bij het testen van software het proces waarbij een softwaresysteem en zijn subsystemen worden geverifieerd. De grootste uitdaging bij dit testen is om voldoende kennis te hebben van het hele systeem en van een onderling verbonden subsysteem.