GUI-testen – UI-testgevallen (voorbeelden)
Om GUI-testen te begrijpen, moeten we eerst begrijpen:
Wat is GUI?
Er zijn twee soorten interfaces voor een computertoepassing. De opdrachtregelinterface is waar u tekst typt en de computer reageert op die opdracht. GUI staat voor Graphical User Interface, waarbij u met de computer communiceert met behulp van afbeeldingen in plaats van tekst.
Hieronder staan de GUI-elementen die gebruikt kunnen worden voor interactie tussen de gebruiker en de applicatie:
GUI-testen is een validatie van de bovenstaande elementen.
Wat is GUI-testen?
GUI-testen is een softwaretesttype dat de grafische gebruikersinterface van de software controleert. Het doel van het testen van de grafische gebruikersinterface (GUI) is ervoor te zorgen dat de functionaliteiten van de softwareapplicatie werken volgens de specificaties door schermen en bedieningselementen zoals menu's, knoppen, pictogrammen, enz. te controleren.
GUI is wat de gebruiker ziet. Stel dat als u guru99.com bezoekt, wat u op de homepage zult zien, dan is dit de GUI (grafische gebruikersinterface) van de site. Een gebruiker ziet de broncode niet. De interface is zichtbaar voor de gebruiker. Vooral de focus ligt op de ontwerpstructuur, afbeeldingen dat ze goed werken of niet.
Als we in het bovenstaande voorbeeld GUI-tests moeten uitvoeren, controleren we eerst of de afbeeldingen volledig zichtbaar moeten zijn in verschillende browsers.
De links zijn ook beschikbaar en de knop zou moeten werken wanneer erop wordt geklikt.
Als de gebruiker het scherm groter of kleiner maakt, mogen afbeeldingen en inhoud niet kleiner worden, bijgesneden of overlappen.
Noodzaak van GUI-testen
Nu is het basisconcept van GUI-testen duidelijk. De weinige vragen die in je opkomen zullen dat zijn
- Waarom GUI-testen?
- Is het echt nodig?
- Is het testen van de functionaliteit en logica van Applicatie niet meer dan voldoende? Waarom zou u dan tijd verspillen aan UI-testen?
Om het antwoord te krijgen, moet je denken als gebruiker, niet als tester. Een gebruiker heeft geen kennis over XYZ-software/applicatie. Het is de gebruikersinterface van de applicatie die beslist of een gebruiker de applicatie verder gaat gebruiken of niet.
Een normale gebruiker bekijkt eerst het ontwerp en uiterlijk van de applicatie/software en hoe gemakkelijk het voor hem is om de UI te begrijpen. Als een gebruiker niet vertrouwd is met de interface of de applicatie complex vindt om te begrijpen, zal hij die applicatie nooit meer gebruiken. Daarom is GUI een punt van zorg en moet er goed worden getest om ervoor te zorgen dat de GUI vrij is van bugs.
Wat check-in GUI-testen?
De volgende checklist zorgt voor gedetailleerde GUI-tests bij het testen van software.
- Controleer alle GUI-elementen op grootte, positie, breedte, lengte en acceptatie van tekens of getallen. U moet bijvoorbeeld invoer kunnen leveren voor de invoervelden.
- Controleer of u de beoogde functionaliteit van de applicatie kunt uitvoeren met behulp van de GUI
- Controleer of foutmeldingen correct worden weergegeven
- Controleer of de verschillende secties op het scherm duidelijk zijn afgebakend
- Controleer of het lettertype dat in een applicatie wordt gebruikt leesbaar is
- Controleer of de uitlijning van de tekst correct is
- Controleer of de kleur van het lettertype en de waarschuwingsberichten esthetisch aantrekkelijk zijn
- Controleer of de afbeeldingen goed scherp zijn
- Controleer of de afbeeldingen goed zijn uitgelijnd
- Controleer de positionering van GUI-elementen voor verschillende schermresoluties.
GUI-testtechnieken
GUI-testtechnieken kan in drie delen worden onderverdeeld:
Handmatig gebaseerd testen
Bij deze aanpak worden grafische schermen handmatig door testers gecontroleerd op basis van de eisen die staan vermeld in het document met bedrijfsvereisten.
Opnemen en opnieuw afspelen
GUI-testen kunnen worden uitgevoerd met behulp van automatiseringstools. Dit gebeurt in 2 delen. Tijdens Record worden teststappen vastgelegd door de automatiseringstool. Tijdens het afspelen worden de opgenomen teststappen uitgevoerd op de applicatie die wordt getest. Voorbeeld van dergelijke tools – QTP.
Modelgebaseerd testen
Een model is een grafische beschrijving van het gedrag van een systeem. Het helpt ons om het systeemgedrag te begrijpen en te voorspellen. Modellen helpen bij het genereren van efficiënte testcases met behulp van de systeemvereisten. Het volgende moet worden overwogen voor deze modelgebaseerde tests:
- Bouw het model
- Bepaal de invoer voor het model
- Bereken de verwachte output voor het model
- Voer de tests uit
- Vergelijk de werkelijke output met de verwachte output
- Een besluit over verdere actie op het model
Enkele modelleringstechnieken waaruit testgevallen kunnen worden afgeleid:
- Grafieken – Geeft de status van een systeem weer en controleert de status na enige invoer.
- Beslissingstabellen – Tabellen die worden gebruikt om de resultaten voor elke toegepaste invoer te bepalen
Modelgebaseerd testen is een zich ontwikkelende techniek voor het genereren van testgevallen op basis van de vereisten. Het belangrijkste voordeel, vergeleken met de twee bovenstaande methoden, is dat het ongewenste toestanden kan bepalen die uw GUI kan bereiken.
Hieronder staan open source-tools waarmee u geautomatiseerde UI-tests kunt uitvoeren.
Product | Gelicentieerd onder |
---|---|
AutoHotkey | LPG |
Selenium | apache |
Sikuli | MIT |
Robot-kader | apache |
Water | BSD |
Dojo-toolkit | BSD |
Voorbeeld GUI-testen Testcases
GUI-testen houdt in principe in
- Het testen van de grootte, positie, breedte en hoogte van de elementen.
- Testen van de foutmeldingen die worden weergegeven.
- Het testen van de verschillende delen van het scherm.
- Testen of het lettertype leesbaar is of niet.
- Testen van het scherm in verschillende resoluties met behulp van in- en uitzoomen, zoals 640 x 480, 600×800, enz.
- Het testen van de uitlijning van de teksten en andere elementen zoals pictogrammen, knoppen, etc. staan op de juiste plaats of niet.
- Het testen van de kleuren van de lettertypen.
- Het testen van de kleuren van de foutmeldingen, waarschuwingsberichten.
- Testen of het beeld een goede helderheid heeft of niet.
- Testen van de uitlijning van de afbeeldingen.
- Testen van de spelling.
- De gebruiker mag niet gefrustreerd raken tijdens het gebruik van de systeeminterface.
- Testen of de interface aantrekkelijk is of niet.
- Testen van de schuifbalken op basis van de grootte van de pagina, indien aanwezig.
- Testen van de uitgeschakelde velden, indien aanwezig.
- Testen van de grootte van de afbeeldingen.
- Testen van de koppen of deze goed zijn uitgelijnd of niet.
- Testen van de kleur van de hyperlink.
Demo: hoe u een GUI-test uitvoert
Hier gebruiken we enkele voorbeeldtestgevallen voor het volgende scherm.
Hieronder vindt u een voorbeeld van de testcases, die bestaan uit UI- en bruikbaarheidstestscenario's.
Testgeval 01 - Controleer of het tekstvak met het label "Bronmap” goed is uitgelijnd.
Testgeval 02 – Controleer of het tekstvak met het label “Pakket” goed is uitgelijnd.
Testcase 03 – Controleer dat label met de naam “Blader” is een knop die zich aan het einde van Tekst bevindtBox met de naam "Bronmap. '
Testcase 04 – Controleer dat label met de naam “Blader” is een knop die zich aan het einde van Tekst bevindtBox met de naam "Pakket. '
Testgeval 05 – Controleer of het tekstvak met het label “Naam” goed is uitgelijnd.
Testcase 06 – Controleer of het label “modifiers” bestaat uit 4 keuzerondjes met de naam openbaar, standaard, privé, beschermd.
Testcase 07 – Controleer of het label “modifiers” bestaat uit 4 keuzerondjes die goed op een rij zijn uitgelijnd.
Testcase 08 – Controleer of het label “Superklasse” onder het etiket “modifiersbestaat uit een vervolgkeuzelijst die goed moet worden uitgelijnd.
Testcase 09 – Controleer of het label “Superklasse' bestaat uit een knop met het label 'Blader” erop, die goed moeten worden uitgelijnd.
Testcase 10 – Controleer of bij het klikken op een keuzerondje de standaardmuisaanwijzer moet worden gewijzigd in de handmuisaanwijzer.
Testcase 11 – Controleer of de gebruiker niet in staat mag zijn om in de vervolgkeuzelijst “Superklasse. '
Testcase 12 – Controleer of er een juiste fout moet worden gegenereerd als er iets verkeerd is gekozen.
Testcase 13 – Controleer of de fout waar nodig in de RODE kleur moet worden gegenereerd.
Testcase 14 – Controleer of de juiste labels moeten worden gebruikt in de foutmeldingen.
Testcase 15 – Controleer of de afzonderlijke keuzerondjes elke keer standaard moeten worden geselecteerd.
Testcase 16 – Controleer of de TAB-knop goed werkt terwijl u op een ander veld naast het vorige springt.
Testcase 17 – Controleer of alle pagina's de juiste titel moeten bevatten.
Testcase 18 – Controleer of de paginatekst goed moet worden uitgelijnd.
Testgeval 19 – Controleer of er na het bijwerken van een veld een correct bevestigingsbericht moet worden weergegeven.
Testgeval 20 – Controleer of er slechts één keuzerondje geselecteerd mag worden en dat er meer dan één selectievakje geselecteerd mag worden.
Uitdagingen bij GUI-testen
In Software Engineering het meest voorkomende probleem tijdens het doen Regressie Testing is dat de GUI van de applicatie regelmatig verandert. Het is erg moeilijk om te testen en te identificeren of het een probleem of een verbetering is. Het probleem manifesteert zich als u geen documenten heeft met betrekking tot GUI-wijzigingen.
GUI-testtools
Hieronder volgt een lijst met populaire GUI-testtools :
- Selenium
- QTP
- Cucumber
- ZijdeTest
- Test voltooid
- Squish GUI-tester
Klik hier om te leren Selenium, QTP & Cucumber.
Conclusie
Het succes van een softwareproduct hangt enorm af van de manier waarop de GUI met de gebruiker samenwerkt en van het gemak waarmee de verschillende functies kunnen worden gebruikt. Daarom zijn GUI-testen erg belangrijk. Handmatige GUI-testen kunnen soms repetitief en saai zijn en daardoor foutgevoelig. Automatisering wordt sterk aanbevolen voor GUI-testen.