Handleiding voor het testen van games: hoe test je apps voor mobiele apparaten en desktops?

โšก Slimme samenvatting

Gametesten is het kwaliteitscontroleproces dat wordt toegepast op videogames, met als doel defecten te vinden in de gameplay, graphics, audio en netwerkverbinding, zodat de versie die naar spelers wordt verzonden stabiel, conform de regelgeving en plezierig blijft.

  • ๐Ÿ”˜ Drie levenscyclusfasen: De fasen pre-productie, productie, testen en implementatie kennen elk hun eigen verificatieactiviteiten.
  • โ˜‘๏ธ Negen kerntypen: Functionaliteits-, compatibiliteits-, prestatie-, conformiteits-, lokalisatie-, soak-, herstel-, beveiligings- en multiplayercontroles vormen de standaardsuite.
  • โœ… Van nature repetitief: Elke nieuwe versie kan nieuwe defecten introduceren, daarom worden de testdocumenten bij elk prototype opnieuw bekeken.
  • ๐Ÿงช Whitebox-dekking: Code Inspectie, focusgroepstesten, data-analyse, pad- en stroomtesten, algoritme- en AI-analyse: een kijkje in de motor.
  • โ™ฟ Ondersteunend gamen: Adaptieve technologie vervangt visuele prikkels door auditieve signalen voor spelers met visuele, auditieve, cognitieve of motorische beperkingen.
  • ๐Ÿ“Š Metrieken zijn belangrijk: DAU/MAU, sessieaantallen, downloadrangschikking, retentiecohorten en framesnelheid kwantificeren of de release daadwerkelijk werkt.

Het testproces voor mobiele en desktopapplicaties, inclusief functionele, prestatie- en compliancecontroles.

Wat is gametesten?

Spel testen Gametesten is een softwaretestproces voor het testen van videogames op kwaliteit. Het belangrijkste doel van gametesten is het identificeren en opsporen van defecten en bugs in een videogame en het verbeteren van de stabiliteit en prestaties ervan. Gametesten is een onderdeel van gameontwikkeling dat ervoor zorgt dat de videogame die wordt uitgebracht, bugvrij is.

Voordat de afzonderlijke technieken zinvol zijn, is het nuttig om te zien waar testen zich bevindt binnen de bredere ontwikkelingscyclus.

Levenscyclus van gameontwikkeling

Pre-productie: Tijdens deze fase worden het spelidee, het storyboard, de functionaliteiten, de behoefteanalyse en de documentatie geproduceerd. Deze fase omvat het technisch ontwerpdocument en de specificaties van de functionaliteiten, de spelarchitectuur, de frame-overlay en de animatie. De volgende punten worden in overweging genomen:

  • Muziek, camera (in- en uitzoomen, herhalen, filmische weergave), speler- en actiekenmerken
  • Spelverloop, regels en voorwaarden om het volgende niveau te bereiken
  • Object- en gebeurtenistriggers, scores, spelersbeweging en -positionering, spelersstatistieken
  • Niet-interactieve sequenties, speciale effecten, titelschermen, acties met meerdere knoppen
  • Gamepad, filmfragment, schok-/trillingseffecten, juridische teksten, gebruik van knopfuncties, gebruik van analoge en digitale modus

De drie fasen en de activiteiten binnen elke fase worden hieronder weergegeven.

Diagram van de levenscyclus van game-ontwikkeling, met de fasen pre-productie, productie, testen en implementatie.
Levenscyclus van gameontwikkeling

Productie: Tijdens deze fase vindt het daadwerkelijke programmeren plaats. Deze fase omvat het coderen en integreren van de verschillende modules.

Testen en implementeren: Tijdens deze fase worden functionele tests, regressietests en de Alpha-, Beta- en Gold-mijlpalen uitgevoerd. Ook worden tests uitgevoerd op het gebied van dekking en workflows, data-integriteit, algoritmespecifieke tests, padtests en incrementele tests met behulp van tools voor het testen van mobiele games.

Hoe gametesten verschilt van andere softwaretesten

Het testen van games is een repetitief proces: elke nieuwe versie kan bugs bevatten en moet grondig worden getest.

Alle gametests volgen een basisstructuur, ongeacht de omvang van het spel en de tijd die nodig is om het te ontwikkelen.

De kwaliteitsborgingsprofessional moet de spelregels en -vereisten bestuderen en inzicht hebben in de algehele architectuur van de spelcomponenten, de bestandsstructuur, de workflow, de bestandsstructuren en de afhankelijkheden die met het spel samenhangen. Bij elk nieuw prototype van het spel moeten de testdocumenten worden herzien om eventuele wijzigingen in de specificaties, nieuwe testgevallen en nieuwe configuratieondersteuning te weerspiegelen. Een videogametester moet er ook voor zorgen dat er geen nieuwe problemen zijn geรฏntroduceerd.

Taken als gametester omvatten onder andere:

  • Classificeer de eisen op basis van het beoogde doel en de doelgroep.
  • Identificeer de gebruikers- en systeemvereisten en classificeer ze in functionele, niet-functionele en domeinvereisten.
  • Identificeer testbare en niet-testbare items, doelstellingen en meetmethoden voor functionele en niet-functionele eisen.
  • Controleer of de functionele eisen volledig, consistent en begrijpelijk zijn.
  • Identificeer aanpasbare vereisten en tegenstrijdige vereisten.
  • Het identificeren van onderling afhankelijke vereisten is een van de kerntaken van gametesten.
  • Geef prioriteit aan de vereisten op basis van hun uniciteit, complexiteit en kritikaliteit.
  • Identificeer het thema van het spel, de personages, de animatie, de AI, de cinematics, het cameraperspectief en de gameplay.

Wil je videogame-tester worden? Dan is deze gratis tutorial zeker de moeite waard: Hoe word je een videogametester.

Soorten speltesten

Hieronder staan โ€‹โ€‹de meest gebruikte testmethoden voor games. Elke methode richt zich op een ander type defect, en een game die klaar is voor release doorloopt normaal gesproken al deze tests in plaats van een keuze te maken tussen de verschillende methoden.

1) Functioneel testen

Functionele QA-testers zoeken naar algemene problemen in het spel of de gebruikersinterface en graphics, zoals problemen met de spelmechanieken, stabiliteitsproblemen en de integriteit van de game-assets. Gebruikersinterfacetesten zorgen ervoor dat het spel gebruiksvriendelijk is. Dit is dezelfde discipline als functioneel testen In alle andere toepassingen worden ze toegepast op spelregels in plaats van bedrijfsregels.

Voorbeeld: Het controleren van kleuren en achtergronden, menustructuur, schermoriรซntatie en schermresolutie, lettergrootte, uitlijnfouten, gebruiksvriendelijkheid, systeemnavigatie zoals laadtijd, time-out en weergave, sortering, bevestigingsberichten, sequenties, animatie- en audio-elementen van het spel, instructies en dialoogberichten. Het omvat ook gebruikersinteracties, gebruikersinterfaces, transactietesten, kalibratie- en nauwkeurigheidstesten van mobiele telefooncamera's, schermresoluties, testen van responsief mobiel ontwerp en testen van audiokwaliteit.

2) Compatibiliteitstesten

Controleren of de game compatibel is met verschillende apparaten en verschillende hardware- en softwareconfiguraties. Brede apparaatondersteuning is voor games belangrijker dan voor de meeste andere applicaties, omdat GPU-stuurprogramma's en schermverhoudingen de weergave van de game beรฏnvloeden. Zie compatibiliteitstesten voor de algemene techniek.

Voorbeeld: Installeer en verwijder het spel op alle ondersteunde consoles, desktops en mobiele apparaten.

3) Prestatietesten

De algehele prestaties van het spel worden gecontroleerd. Prestatieoptimalisatie wordt uitgevoerd om de spelsnelheid te verbeteren. De bredere werkwijze wordt behandeld in prestatie testenen de mobielspecifieke invalshoek in Prestatietesten van mobiele apps.

Belangrijke parameters die tijdens de prestatietests worden gecontroleerd:

  • Reactietijd van client en server, transactieverwerkingstijden, prestaties bij piekbelasting, levensduur, netwerkdekking, geheugenlekken, weinig geheugen, lage batterijspanning, tijd die nodig is om de applicatie te downloaden, gelijktijdige (meerdere gebruikers) toegang tot de applicatieserver, snelheid, doorvoer, betrouwbaarheid en schaalbaarheid.
  • Batterijverbruik en grafische prestaties: Meet het batterijverbruik van het mobiele spel. Het batterijverbruik moet gedurende lange tijd optimaal zijn en de spelprestaties moeten bevredigend zijn onder wisselende zware belasting op verschillende apparaten.
  • Processor- en geheugenbeperkingen: Prestatiemeters worden gebruikt om het CPU- en geheugenverbruik van de applicatie te meten.
  • Netwerkverbinding: Deze tool meet de reactietijd van het mobiele spel op verschillende netwerktypen (Wi-Fi, 3G, 4G, 5G). Het geeft een algemeen beeld van hoe goed het spel presteert op onbetrouwbare netwerken en controleert ook de connectiviteit tussen mobiele apparaten, datacenters en de cloud. Pieken, haperende verbindingen, dataduplicatie, pakketverlies en datafragmentatie worden allemaal gemonitord.
  • Het testen van de prestaties van mobiele games, met name MMO-titels.

4) Conformiteits-/nalevingstesten

Dit omvat naleving van de richtlijnen van de marktplaats (bijvoorbeeld het beleid van de Apple App Store) en het bedrijfsbeleid (bijvoorbeeld verboden content). Naleving kan ook betrekking hebben op regelgevende instanties zoals PEGI en ESRB. De game streeft naar een specifieke leeftijdsclassificatie en als er aanstootgevende content is die niet geschikt is voor de gewenste classificatie, wordt dit geรฏdentificeerd en gerapporteerd. Zelfs een enkele overtreding in een aanvraag voor licentiegoedkeuring kan leiden tot afwijzing van de game, met extra kosten voor verdere tests en herindiening tot gevolg.

Voorbeeld: Als het spel in Europese landen wordt uitgebracht, test dan de PAL-conversie; als het spel voor Noord-Amerika wordt geproduceerd, test dan de NTSC-conversie.

5) Lokalisatietesten

Lokalisatie testen Dit wordt essentieel wanneer een game gericht is op de wereldwijde markt. Gametitels, content en teksten moeten vertaald en getest worden op apparaten in meerdere talen. Deze tests kunnen snel worden uitgevoerd met behulp van cloudgebaseerde toegang tot apparaten en testautomatisering.

Voorbeeld: Lokalisatiebehoeften specifiek voor de MENA-regio (Midden-Oosten/Noord-Afrika), Arabische lokalisatie (ondersteuning voor tekst van rechts naar links, weergave in beide richtingen), pseudo-lokalisatietesten, dubbelbyte-tekens voor Oost-Aziatische talen, lokale tijd en datum, valuta, adresformaten en andere lokale vereisten.

6) Dompeltest

Deze testtechniek voor geautomatiseerde gametests houdt in dat de game gedurende langere tijd in verschillende bedrijfsmodi draait, bijvoorbeeld inactief, gepauzeerd of op het titelscherm. Door deze test kunnen geheugenlekken of afrondingsfouten worden opgespoord.

Voorbeeld: Het spel is begonnen en het personage wordt 24 uur lang inactief gehouden. Deze techniek wordt gebruikt om crashes te detecteren die worden veroorzaakt door geheugenlekken en andere fouten in de game-engine.

7) Hersteltesten

Op het gebied van software, herstel testen Deze test controleert hoe goed de applicatie herstelt van crashes, hardwarefouten en andere soortgelijke storingen. De applicatie wordt geforceerd te laten crashen, waarna wordt geobserveerd hoe deze zich herstelt van de storing en de omgevingsfactoren.

Voorbeeld: Terwijl een game-applicatie actief is, start u de gameconsole plotseling opnieuw op en controleert u de gegevensintegriteit.

8) Beveiligingstesten

Beveiligingstests worden uitgevoerd om te controleren hoe veilig de software functioneert wanneer deze wordt blootgesteld aan externe bedreigingen. Hierbij wordt gekeken naar de bescherming van gegevens tegen externe bedreigingen, ongecontroleerde toegangsbeperkingen tot het systeem, datalekken, fouten in het besturingssysteem, fouten in het communicatiesysteem en zwakke encryptiealgoritmen.

Voorbeeld: Veranderen van een URL Vanuit /login naar /play op een gamesite mag geen directe toegang tot de spellen mogelijk zijn.

9) Testen van andere spellen

Testen van echte of virtuele personages. In multiplayer videogames zijn connectiviteit met de server en synchronisatie van de gamestatus twee cruciale gebieden die getest moeten worden.

Voorbeeld: Multiplayer 3D-racegames.

Het testen van nieuwe functies zoals spelstatusupdates, vriendenuitnodigingen en het delen van premium cadeaus. Dit zorgt voor een rijke spelervaring voor de gebruiker.

Voorbeeld: Facebook, blogs.

Geluidstests

Testen of er een fout zit in het laden van de bestanden, luisteren naar geluidsbestanden op fouten of vervormingen, en een CC-profiler gebruiken om het commentaar te analyseren.

Database en spelstatistieken

Databaseverificatie met behulp van debugging om te onderzoeken of het spel de gegevens correct gebruikt. Zorg ervoor dat de gegevens op de juiste plaats worden geladen en de juiste informatie weergeven.

White-box testen

White-box testen voor games richt zich op de architectuur, integratie en systeemaspecten van de mobiele game.

  1. Code Rioolbuis Inspectie: De broncode wordt beoordeeld en de programmalogica, veelvoorkomende programmeerfouten en naleving van de codeerstandaarden worden geanalyseerd.
  2. Focustesten: Codefragmenten worden aan de afzonderlijke modules aangeboden en de uitvoer wordt geanalyseerd.
  3. Data analyse: Het gebruik, de interpretatie en de manipulatie van gegevens worden geanalyseerd en gevalideerd voor de verschillende modules.
  4. Pad- en stroomtesten: De objecten worden in de juiste volgorde uitgevoerd.
  5. Algoritmespecifieke testen: Het testen van een specifiek spelscenario of -functie door datavariabelen en datawaarden in de code in te stellen en deze vervolgens in de runtime-omgeving uit te voeren.
  6. Artificial Intelligence Analyse: De statistieken van de programmeerbare bewegingen en acties van de AI-component worden gegenereerd. Het resultaat wordt gevalideerd om te controleren of alle programmeerbare bewegingen worden gebruikt. Bijvoorbeeld: een zijwaartse greep op het snowboard, en acties zoals een gecombineerde stoot of trap in meerdere richtingen.

Ondersteunend gamen met behulp van adaptieve technologie

Ondersteunend gamen wordt ook wel toegankelijk gamen genoemd. Functies worden ontworpen met behulp van adaptieve technologie voor mensen met verschillende beperkingen, zoals slechtziendheid, wazig zien, blindheid, het niet kunnen onderscheiden van kleuren en spraak-, gehoor-, cognitieve, motorische en mobiliteitsbeperkingen. De verificatiemethode volgt dezelfde principes als toegankelijkheidstesten in gangbare software.

Cardinal Direction (CD) en Tower of London (TOL) zijn twee populaire spellen die zijn aangepast voor visueel gehandicapte gebruikers. In deze spellen worden visuele prikkels vervangen door audio-input.

Een videogame-tester moet tijdens het testen van een dergelijk spel op het volgende letten:

  1. De kleuren moeten in een bepaald patroon knipperen en voor elke kleur moet een aparte toon klinken.
  2. Bij elke kleur hoort u een hoorbare toon.
  3. Visuele gegevens moeten in woorden worden beschreven, zodat spelers met een visuele beperking geen problemen ondervinden bij het ontvangen ervan via schermlezers.
  4. De speler moet geluiden in het spel in drie dimensies kunnen horen en door de wereld kunnen navigeren met behulp van het touchscreen, 3D-audio en ruimtelijk geluid.

Spelstatistieken die een tester moet kennen

Testresultaten alleen vertellen een studio niet of een release geslaagd is. De volgende statistieken zijn de cijfers die een tester naar verwachting zal lezen in combinatie met het defectrapport.

DAU/MAU (dagelijks actieve gebruikers / maandelijks actieve gebruikers): De verhouding tussen het aantal actieve gebruikers dat dagelijks speelt en het aantal maandelijks actieve gebruikers. Dit wordt ook wel de 'stickiness factor' genoemd.

Sessie: Elke keer dat een gebruiker de app opent, telt dat als een sessie. Hier ligt de focus op het gemiddelde aantal sessies per DAU (Daily Active User).

Downloadrang: De positie van een game in een bepaalde app store (iOS, Android Spelen) op basis van maandelijkse gamedownloads.

retentie: Een zeer belangrijke maatstaf voor een Android Speltester voor een gratis te spelen game. Om de retentie te berekenen, verdeel je de gebruikers in cohorten op basis van de dag waarop de applicatie is gedownload.

Prestatiestatistieken: Deze track. De prestaties van online of persistente games โ€” de framesnelheid waarmee een game wordt uitgevoerd op een clienthardwareplatform, of in het geval van een gameserver, de stabiliteit ervan. Prestatiemetingen kunnen worden gebruikt om veranderende functies en updates te monitoren.

Belangrijkste risico's bij het testen van games

De onderstaande risico's zorgen er in de meeste gevallen voor dat een technisch functionerend project commercieel gezien een teleurstelling wordt.

  1. Het spel biedt geen boeiende ervaring voor de beoogde doelgroep.
  2. Het spel is niet ontworpen met de speler in gedachten.
  3. Het plezier en de verslavende gameplay ontbreken.
  4. Het spel is niet uniek, competitief of snel.
  5. Het spel faalt door technische problemen, defecte functies, kritieke bugs, slechte muziek en geluid, of slechte videokwaliteit.
  6. De ontwikkelingskosten van het spel lopen uit de hand.
  7. Het esthetische ontwerp en de gameplay zijn allesbehalve eenvoudig gehouden.

Veelgestelde vragen

Het testproces herhaalt na elke build de eerder geslaagde testgevallen om te bevestigen dat een oplossing of nieuwe functie geen schade heeft toegebracht. Omdat gamebuilds dagelijks veranderen, richten regressietests zich meestal op risicovolle gebieden zoals savebestanden, inloggen, matchmaking en de in-game economie.

Machine learning-bots spelen 's nachts duizenden sessies om soft locks en onbereikbare geometrie te vinden, dubbele crashrapporten te groeperen en visuele glitches te signaleren door weergegeven frames te vergelijken. Menselijke testers blijven echter bepalend voor het plezier dat een game beleeft, en dat kan momenteel door geen enkel model worden vervangen.

Ja, voor de scriptlaag. Copilot versnelt het schrijven van engine-testharnesses, datagestuurde parameterreeksen en logparsers. Het kan de spelbalans of moeilijkheidsgraad niet beoordelen, dus gegenereerde tests hebben nog steeds een tester nodig om te definiรซren hoe een correct resultaat eruitziet.

Testspelers spelen zonder script en proberen bewust ongebruikelijke volgordes en grenzen uit om bugs te ontdekken die in het script niet waren voorzien. Het vormt een aanvulling op runs met een script en is vooral effectief bij nieuwe levels, interacties met natuurkundige elementen en alles wat de creativiteit van de speler vereist.

Een typische stapel combineert een defect tracker met een testmanagementtool, een engine-eigen automatiseringsframework, een GPU- of CPU-profiler, netwerkshaping hulpprogramma's, en een cloud op echte apparaten om de dekking te garanderen. mobiel testen apparaatmatrix.

Alpha betekent dat de functionaliteit compleet maar nog in ruwe staat is. Beta betekent dat de content is vergrendeld en dat de focus verschuift naar fouten en balans, vaak in samenwerking met externe partijen. Gold betekent dat de build is goedgekeurd voor release en is ingediend voor platformcertificering.

Vermeld het buildnummer, platform en apparaat, de exacte stappen om het probleem te reproduceren, de frequentie, het verwachte versus het daadwerkelijke gedrag, en voeg een videoclip met het logbestand toe. Games zijn visueel, dus een korte opname kan onduidelijkheden wegnemen die met alleen een beschrijving zelden worden opgelost.

Speltesten sporen defecten op aan de hand van een specificatie. Playtesten verzamelen feedback van representatieve spelers over de moeilijkheidsgraad, het tempo en het speelplezier. Het ene proces waarborgt de correctheid, het andere de aantrekkelijkheid, en een studio heeft beide nodig vรณรณr de release.

Vat dit bericht samen met: