Veiledning for spilltesting: Slik tester du mobil-/skrivebordsapper

โšก Smart oppsummering

Spilltesting er kvalitetskontrollprosessen som brukes pรฅ videospill, med sikte pรฅ รฅ finne feil i spilling, grafikk, lyd og nettverk, slik at byggingen som sendes til spillerne forblir stabil, kompatibel og underholdende.

  • ๐Ÿ”˜ Tre livssyklusfaser: Forproduksjon, produksjon og testing og utrulling har hver sine egne verifiseringsaktiviteter.
  • โ˜‘๏ธ Ni kjernetyper: Funksjonalitet, kompatibilitet, ytelse, samsvar, lokalisering, soak, gjenoppretting, sikkerhet og flerspillerkontroller utgjรธr standardpakken.
  • โœ… Gjentakende av natur: Hver nybygg kan introdusere feil pรฅ nytt, sรฅ testdokumenter gjennomgรฅs pรฅ nytt med hver prototype.
  • ๐Ÿงช Hvitboksdekning: Code inspeksjon, fokustesting, dataanalyse, bane- og flyttesting, algoritme- og AI-analyse, se inn i motoren.
  • โ™ฟ Assisterende spilling: Adaptiv teknologi erstatter visuelle stimuli med lydsignaler for spillere med syns-, hรธrsels-, kognitive eller motoriske svekkelser.
  • ๐Ÿ“Š Mรฅlinger er viktige: DAU/MAU, antall รธkter, nedlastingsrangering, retensjonskohorter og bildefrekvens kvantifiserer om utgivelsen faktisk fungerer.

Spilltestingsprosess for mobil- og skrivebordsapplikasjoner som dekker funksjons-, ytelses- og samsvarskontroller

Hva er spilltesting?

Spilltesting er en programvaretestingsprosess for testing av videospill for kvalitetskontroll. Hovedmรฅlet med spilltesting er รฅ identifisere og oppdage feil og feil i et videospill og รฅ forbedre stabiliteten og ytelsen. Spilltesting er en del av spillutvikling som bidrar til รฅ sikre at videospillet som distribueres er feilfritt.

Fรธr de enkelte teknikkene gir mening, er det nyttig รฅ se hvor testing befinner seg i den bredere utviklingssyklusen.

Spillutvikling livssyklus

Fรธr produksjon: I denne fasen produseres spillideen, storyboardet, funksjonene, kravanalysen og dokumentasjonen. Denne fasen inkluderer det tekniske designdokumentet og funksjonsspesifikasjonene, spillarkitekturen, rammeoverlegget og animasjonen. Fรธlgende elementer vurderes:

  • Musikk, kamera (zoom inn og ut, avspilling, filmatisk visning), spiller- og handlingsattributter
  • Spillets flytlogikk, regler og betingelser for รฅ nรฅ neste nivรฅ
  • Objekt- og hendelsesutlรธsere, poengsummer, spillerbevegelse og -posisjonering, spillerstatistikk
  • Ikke-interaktive sekvenser, spesialeffekter, tittelskjermer, handlinger med flere knapper
  • Gamepad, filmklipp, stรธt-/vibrasjonseffekter, juridiske tekster, bruk av knappefunksjoner, bruk av analog og digital modus

De tre stadiene og aktivitetene i hver av dem vises nedenfor.

Diagram over spillutviklingslivssyklusen som viser stadier av fรธrproduksjon, produksjon, testing og distribusjon
Spillutvikling livssyklus

Produksjon: I denne fasen gjรธres selve kodingen. Denne fasen inkluderer koding og integrering av de ulike modulene.

Testing og distribusjon: I lรธpet av denne fasen utfรธres funksjonstester, regresjonstesting og milepรฆlene Alfa, Beta og Gull. Testing av dekning og flyt, dataintegritet, algoritmespesifikk testing, stitesting og inkrementell testing gjรธres ogsรฅ ved hjelp av verktรธy for testing av mobile spill.

Hvordan spilltesting er forskjellig fra annen programvaretesting

Testing av spill er en repeterende prosess โ€“ alle nye versjoner kan ha feil og mรฅ testes grundig.

All spilltesting fรธlger en grunnleggende struktur uavhengig av spillets stรธrrelse og tiden det tar รฅ produsere det.

Kvalitetssikringsmedarbeideren mรฅ studere spillets regler og krav, og forstรฅ den overordnede spillkomponentarkitekturen, filarkitekturen, flyten, filstrukturene og avhengighetene knyttet til spillet. Med hver ny prototype av spillet mรฅ testdokumentene gjennomgรฅs pรฅ nytt for รฅ gjenspeile eventuelle endringer i spesifikasjonene, nye testtilfeller for spilltesting og ny konfigurasjonsstรธtte. En videospilltester bรธr ogsรฅ sรธrge for at ingen nye problemer ble introdusert.

Jobber med spilltesting innebรฆrer:

  • Klassifiser kravene basert pรฅ tiltenkt formรฅl og mรฅlgruppe.
  • Identifiser bruker- og systemkravene og klassifiser dem i funksjonelle, ikke-funksjonelle og domenekrav.
  • Identifiser testbare elementer, ikke-testbare elementer, mรฅl og tiltak for funksjonelle og ikke-funksjonelle krav.
  • Sjekk om de funksjonelle kravene er fullstendige, konsistente og forstรฅelige.
  • Identifiser tilpassbare krav og motstridende krav.
  • Identifiser gjensidig avhengige krav, som er en av kjernejobbene innen spilltesting.
  • Prioriter kravene basert pรฅ unikhet, kompleksitet og kritiskhet.
  • Identifiser spillets tema, karakterer, animasjon, AI, filmopptak, kameraperspektiv og spilling.

Hvis du har lyst til รฅ bli en videospilltester, er det en gratis veiledning som er verdt รฅ sjekke ut: Hvordan bli en videospilltester.

Typer spilltesting

Nedenfor finner du de populรฆre teknikkene for spilltesting. Hver av dem retter seg mot en annen klasse av defekter, og en utgivelsesklar tittel gรฅr vanligvis gjennom alle i stedet for รฅ velge mellom dem.

1) Funksjonstesting

Funksjonalitets-QA-testere ser etter generiske problemer i spillet eller brukergrensesnittet og grafikken, som for eksempel problemer med spillmekanikken, stabilitetsproblemer og integriteten til spillressursene. Testing av brukergrensesnitt sikrer spillets brukervennlighet. Dette er samme disiplin som funksjonstesting i enhver annen applikasjon, anvendt pรฅ spillregler i stedet for forretningsregler.

Eksempel: Kontroll av farger og bakgrunner, menystruktur, skjermretning og skjermopplรธsning, skriftstรธrrelse, justeringsfeil, brukervennlighet, systemnavigasjon som lastetid, timeout og visning, sortering, bekreftelsesmeldinger, sekvenser, animasjon og lydelementer i spillet, instruksjoner og dialogmeldinger. Det dekker ogsรฅ brukerinteraksjoner, brukergrensesnitt, transaksjonstesting, kalibrering og nรธyaktighetstesting av mobiltelefonkameraer, skjermopplรธsninger, testing av responsivt mobildesign og testing av lydkvalitet.

2) Kompatibilitetstesting

Sjekker om spillet er kompatibelt pรฅ tvers av forskjellige enheter og pรฅ forskjellige konfigurasjoner av maskinvare og programvare. Bred enhetsdekning er viktigere for spill enn for de fleste applikasjoner, fordi GPU-drivere og skjermstรธrrelsesforhold endrer hvordan spillet gjengis. Se kompatibilitetstesting for den generelle teknikken.

Eksempel: Installer og avinstaller spillet pรฅ alle stรธttede konsoller, stasjonรฆre datamaskiner og mobiler.

3) Ytelsestesting

Spillets generelle ytelse kontrolleres. Ytelsesjustering utfรธres for รฅ optimalisere spillhastigheten. Den bredere รธvelsen dekkes i ytelsestesting, og den mobilspesifikke vinkelen i ytelsestesting av mobilapper.

Viktige parametere kontrollert under ytelsestesting:

  • Svartid pรฅ klient og servere, fullfรธringstider for transaksjoner, ytelse ved toppbelastning, levetid, nettverksdekning, minnelekkasje, lite minne, lavt batterinivรฅ, tid det tar รฅ laste ned applikasjonen, samtidig (flere brukere) tilgang til applikasjonsserveren, hastighet, gjennomstrรธmning, pรฅlitelighet og skalerbarhet.
  • Batteriforbruk og grafikkytelse: Mรฅl batteriforbruket til mobilspillet. Batteriforbruket mรฅ vรฆre optimalt over lange timer, og spillresponsene bรธr vรฆre tilfredsstillende under varierende tung belastning pรฅ tvers av forskjellige enheter.
  • Prosessor- og minnebegrensninger: Ytelsestellere brukes til รฅ mรฅle CPU- og minneforbruket til applikasjonen.
  • Nettverkstilkobling: Mรฅler responstiden til mobilspillet pรฅ forskjellige nettverkstyper (Wi-Fi, 3G, 4G, 5G). Den gir en samlet innsikt i hvor godt spillet vil prestere pรฅ upรฅlitelige nettverk, og sjekker ogsรฅ tilkoblingen mellom mobile enheter, datasentre og skyen. Topptider, hakkete forbindelser, duplisering av data, pakketap og fragmentering av data overvรฅkes.
  • Testing av mobilspillytelse, spesielt for MMO-titler.

4) Samsvarstesting / samsvarstesting

Dette dekker samsvar med markedsretningslinjer (for eksempel Apple App Store-policyer) og samsvar med bedriftspolicyer (for eksempel forbudt innhold). Samsvar kan ogsรฅ referere til reguleringsorganer som PEGI og ESRB. Spillet er rettet mot en bestemt innholdsvurdering, og hvis det finnes stรธtende innhold som er upassende for den รธnskede vurderingen, blir det identifisert og rapportert. Selv et enkelt brudd i en innsending for lisensgodkjenning kan fรธre til at spillet blir avvist, noe som medfรธrer ekstra kostnader for videre testing og ny innsending.

Eksempel: Hvis spillet skal utgis i europeiske land, test for PAL-konvertering; hvis spillet er produsert for Nord-Amerika, test for NTSC-konverteringer.

5) Lokaliseringstesting

Lokaliseringstesting blir viktig nรฅr et spill er rettet mot globale markeder. Spilltitler, innhold og tekster mรฅ oversettes og testes med enheter pรฅ flere sprรฅk. Disse testene kan utfรธres raskt ved hjelp av skybasert enhetstilgang og testautomatisering.

Eksempel: Lokaliseringsbehov spesifikke for MENA-regionen (Midtรธsten/Nord-Afrika), arabisk lokalisering (stรธtte for tekst fra hรธyre mot venstre, toveis visning), pseudolokaliseringstesting, dobbeltbytetegn for รธstasiatiske sprรฅk, lokal tid og dato, valuta, adresseformater og andre lokale krav.

6) Blรธtleggingstesting

Denne teknikken for testing av spillautomatisering innebรฆrer รฅ la spillet kjรธre over lengre tid i forskjellige driftsmoduser โ€“ for eksempel inaktivt, pรฅ pause eller ved tittelskjermen. Soaking kan identifisere minnelekkasjer eller avrundingsfeil.

Eksempel: Spillet har startet, og figuren mรฅ stรฅ inaktiv i 24 timer. Denne teknikken brukes til รฅ oppdage krasj forรฅrsaket av minnelekkasjer og andre feil i spillmotoren.

7) Gjenopprettingstesting

I programvare, gjenopprettingstesting sjekker hvor godt applikasjonen gjenoppretter seg etter krasj, maskinvarefeil og andre lignende feil. Applikasjonen tvinges til รฅ feile, og det observeres deretter hvordan den gjenoppretter seg etter feilforholdene og miljรธet.

Eksempel: Mens et spillprogram kjรธrer, start spillkonsollen plutselig pรฅ nytt og valider dataintegriteten.

8) Sikkerhetstesting

Sikkerhetstesting utfรธres for รฅ sjekke hvor trygt programvaren fungerer nรฅr den utsettes for eksterne trusler. Det dekker databeskyttelse mot eksterne trusler, ukontrollerte systemtilgangsbegrensninger, datainnbrudd, feil i operativsystemer, feil i kommunikasjonssystem og svake krypteringsalgoritmer.

Eksempel: Endring av en URL fra /login til /play pรฅ en spillside skal ikke tillate direkte tilgang til spillene.

9) Testing av andre spill

Testing av ekte eller virtuelle karakterer. I flerspillervideospill er tilkobling til serveren og synkronisering av spillstatus to kritiske omrรฅder som skal testes.

Eksempel: Flerspiller 3D-racingspill.

Testing av nye funksjoner som oppdateringer av spillstatus, venneinvitasjoner og deling av premiumgaver. Dette sikrer en rik spillopplevelse for brukeren.

Eksempel: Facebook, blogger.

Lydtesting

Testing av om det er en feil under lasting av filene, lytting av lydfiler for feil eller forvrengninger, og bruk av en CC-profiler for รฅ analysere fargekommentarene.

Database og spillstatistikk

Databaseverifisering ved hjelp av feilsรธking for รฅ undersรธke om spillet bruker dataene riktig. Sรธrg for at dataene lastes inn pรฅ riktig sted og viser riktig informasjon.

Hvitbokstesting

Hvitbokstesting for spill fokuserer pรฅ de arkitektoniske, integrasjons- og systemaspektene ved mobilspill.

  1. Code inspeksjon: Kildekoden gjennomgรฅs, og programlogikk, vanlige programmeringsfeil og samsvar med kodestandarder analyseres.
  2. Fokustesting: Kodebiter mates til de isolerte modulene, og utdataene analyseres.
  3. Dataanalyse: Databruk, tolkning og manipulering analyseres og valideres for de ulike modulene.
  4. Bane- og flyttesting: Riktig rekkefรธlge av objekter utfรธres.
  5. Algoritmespesifikk testing: Teste et bestemt spillscenario eller en bestemt funksjon ved รฅ angi datavariabler og dataverdier i koden og kjรธre den i kjรธretidsmiljรธet.
  6. Kunstig intelligens Analyse: Lรธpestatistikken for de programmerbare bevegelsene og spillene til AI-komponenten genereres. Resultatet valideres for รฅ sjekke om alle de programmerbare bevegelsene brukes. Eksempel: et sidegrep pรฅ snรธbrettet, og spill som et kombinasjonsslag eller spark i flerdireksjonell bevegelse.

Assisterende spill ved hjelp av adaptiv teknologi

Assisterende spilling er ogsรฅ kjent som tilgjengelighetsspilling. Funksjoner er utformet ved hjelp av adaptiv teknologi for personer med ulike funksjonshemminger som svaksyn, tรฅkesyn, blindhet, manglende evne til รฅ skille farger og tale-, hรธrsels-, kognitive, motoriske og mobilitetshemminger. Verifiseringsmetoden fรธlger de samme prinsippene som tilgjengelighetstesting i vanlig programvare.

Cardinal Direction (CD) og Tower of London (TOL) er to populรฆre spill som er modifisert for synshemmede brukere. I disse spillene erstattes visuelle stimuli med lydinnganger.

En videospilltester bรธr merke seg fรธlgende nรฅr han tester et slikt spill:

  1. Fargene skal blinke i et mรธnster, og toner skal spille for hver farge.
  2. Hver farge skal ledsages av en hรธrbar tone.
  3. Visuelle data mรฅ beskrives med ord, slik at synshemmede spillere ikke har problemer med รฅ motta dem via skjermlesere.
  4. Spilleren skal hรธre lyder i spillet i tre dimensjoner og mรฅ kunne navigere i verden ved hjelp av berรธringsskjermen, 3D-lyd og romlig lyd.

Spillmรฅlinger som en tester bรธr kjenne til

Testresultater alene forteller ikke et studio om en utgivelse var vellykket. Fรธlgende mรฅlinger er tallene en tester forventes รฅ lese sammen med feilrapporten.

DAU/MAU (daglig aktive brukere / mรฅnedlig aktive brukere): Forholdet mellom aktive brukere som spiller hver dag og antall mรฅnedlige aktive brukere. Dette kalles ogsรฅ ofte ยซstickiness factorยป.

ร˜kt: Hver gang en bruker รฅpner appen teller det som en รธkt. Her er fokuset pรฅ gjennomsnittlig antall รธkter per DAU.

Last ned rangering: Rangeringen til et spill i en bestemt appbutikk (iOS, Android Spill) etter mรฅnedlige spillnedlastinger.

Bevaring: En svรฆrt viktig mรฅlestokk for en Android spilltester pรฅ et gratisspill. For รฅ beregne retensjon, del brukerne inn i kohorter basert pรฅ dagen appen ble lastet ned.

Ytelsesberegninger: Disse track ytelsen til online- eller vedvarende spill โ€“ bildefrekvensen et spill kjรธres med pรฅ en klientplattform, eller i tilfelle en spillserver, stabiliteten. Ytelsesmรฅlinger kan brukes til รฅ overvรฅke endrede funksjoner og oppdateringer.

Nรธkkelrisikoer i spilltesting

Risikoene nedenfor gjรธr oftest et teknisk fungerende bygg til et kommersielt skuffende et.

  1. Spillet skaper ikke en fengende opplevelse for mรฅlgruppen.
  2. Spillet har ikke et spillersentrisk design.
  3. Morofaktoren og det avhengighetsskapende spillet mangler.
  4. Spillet er ikke unikt, konkurransepreget eller fartsfylt.
  5. Spillet mislykkes pรฅ grunn av tekniske problemer, รธdelagte funksjoner, kritiske feil, dรฅrlig musikk og lyd, eller dรฅrlig video.
  6. Kostnadene for spillutvikling overstiger budsjettet.
  7. Det estetiske designet og spillingen er ikke holdt enkelt.

Spรธrsmรฅl og svar

Den kjรธrer tidligere bestรฅtte saker pรฅ nytt etter hver build for รฅ bekrefte at en rettelse eller ny funksjon ikke รธdela noe. Fordi spillbuild endres daglig, konsentrerer regresjonspakker seg vanligvis om hรธyrisikoomrรฅder som lagringsfiler, innlogging, matchmaking og รธkonomien i spillet.

Maskinlรฆringsroboter spiller tusenvis av รธkter over natten for รฅ finne myke lรฅser og utilgjengelig geometri, gruppere dupliserte krasjrapporter og flagge visuelle feil ved รฅ sammenligne gjengitte rammer. Menneskelige testere har fortsatt dรธmmekraft basert pรฅ morofaktoren, som ingen modell for รธyeblikket erstatter.

Ja, for det skriptede laget. Copilot รธker hastigheten pรฅ skrivingen av motortestseler, datadrevne parametersett og loggparsere. Den kan ikke bedรธmme spillbalanse eller vanskelighetskurver, sรฅ genererte tester trenger fortsatt en tester for รฅ definere hva et riktig resultat ser ut.

Testere spiller uten manus, og prรธver bevisst ut merkelige sekvenser og grenser for รฅ avdekke feil uten forutsett skriftlig saksbehandling. Det utfyller manusbaserte lรธp og er spesielt effektivt pรฅ nye nivรฅer, fysikkinteraksjoner og alt som involverer spillerkreativitet.

En typisk stabel parer en defekt tracbruker et testadministrasjonsverktรธy, et motorbasert automatiseringsrammeverk, en GPU- eller CPU-profiler, nettverksdelingping verktรธy og en sky for ekte enheter for รฅ dekke mobil testing enhetsmatrise.

Alfa betyr at funksjonssettet er komplett, men grovt. Beta betyr at innholdet er lรฅst og fokuset flyttes til defekter og balanse, ofte med eksterne aktรธrer. Gull betyr at bygget er godkjent for utgivelse og sendt inn for plattformsertifisering.

Inkluder byggnummer, plattform og enhet, nรธyaktige reproduksjonstrinn, frekvens, forventet kontra faktisk oppfรธrsel, og et videoklipp med loggfilen. Spill er visuelle, sรฅ et kort opptak lรธser tvetydigheter som skriftlige trinn alene sjelden avgjรธr.

Spilltesting jakter pรฅ feil i forhold til en spesifikasjon. Spilltesting samler tilbakemeldinger fra representative spillere om vanskelighetsgrad, tempo og underholdning. Den ene beskytter korrekthet, den andre beskytter appell, og et studio trenger begge deler fรธr utgivelse.

Oppsummer dette innlegget med: