Keskeytä testaus mobiilisovelluksessa
⚡ Älykäs yhteenveto
Keskeytystestaus tarkistaa, miten mobiilisovellus toimii puhelun, hälytyksen, ilmoituksen tai verkkoyhteyden katkeamisen jälkeen, ja palaako sovellus täsmälleen edelliseen tilaansa keskeytyksen päätyttyä.
Mikä on keskeytystestaus?
Keskeytä testaus on mobiilisovellustestauksen osa-alue, joka käsittelee sovelluksen reagointia keskeytykseen ja palautumista edelliseen tilaansa. Keskeytys tulee sovelluksen ulkopuolelta – käyttöjärjestelmästä, laitteistosta tai toisesta sovelluksesta – ja testi varmistaa, ettei tietoja, näytön tilaa tai keskeneräisiä tapahtumia menetetä hallinnan palatessa.
Keskeytystestaus soveltuu kaikentyyppisiin sovelluksiin – verkko-, mobiili-, itsenäisiin sovelluksiin ja niin edelleen. Laitteiden, verkkojen ja kokoonpanojen monimuotoisuus tekee siitä paljon näkyvämmän. mobile sovelluksissa kuin muissa.
Miksi tarvitset keskeytystestauksen?
Mikä on se yksi asia, joka lähes aina tapahtuu kokouksessa? Sinut keskeytetään, eikö niin? Kun niin tapahtuu, jotkut ihmiset eivät edes räpäytä silmiään, jotkut tarvitsevat minuutin palatakseen takaisin, ja jotkut menettävät ajatuksensa kokonaan. Yksinkertaisesti sanottuna keskeytystestaus yrittää selvittää, millaista toimintaa sovelluksesi osoittaa.
Jätä hetkeksi kaikki fraseeraus syrjään ja katso toista tosielämän tilannetta. Oletetaan, että omistat taskulampun ja kytket sen päälle. Paristo tyhjenee, mikä keskeyttää sen nykyisen toimintatilan. Vaihda paristot ja palauta se. Taskulampun pitäisi syttyä uudelleen normaalisti. Tämä on käyttötapaus. Yksi testausala, joka keskittyy siihen, tapahtuuko näin vai ei, on keskeytystestaus.
Liiketoimintatapaus on yksinkertainen. Keskeytys tapahtuu pahimmalla mahdollisella hetkellä – kesken maksun, latauksen tai lomakkeen – ja käyttäjä, joka menettää kyseisen työn, yrittää harvoin uudelleen. Kaatumiset ansioluettelossa, tyhjät näytöt, päällekkäiset tapahtumat ja lomakkeen syötteen katoaminen ovat kaikki vikoja, jotka vain keskeytys paljastaa, minkä vuoksi ne selviävät toiminnallisesta vaiheesta, joka ei koskaan keskeytä mitään.
Mobiilisovelluksen keskeytystyypit
Keskeytykset jakautuvat muutamaan tuttuun ryhmään, jotka on esitetty tiivistetysti alla olevassa kuvassa.
Tunnemme kaikki yleisimmät normaalisti esiintyvät keskeytykset. Tässä on muutamia niistä:
- Akun varaus on alhainen
- Akku täynnä – latauksen aikana
- Saapuva puhelu
- Saapuvat tekstiviestit
- Saapuva hälytys toisesta mobiilisovelluksesta
- Kytketty latausta varten
- Irrotettu latauksesta
- Laite sammutettu
- Sovelluspäivitysmuistutukset
- hälytys
- Verkkoyhteyden katkeaminen
- Verkkoyhteyden palautus
Tämä luettelo ei ole tyhjentävä, mutta se sisältää yleisimmät skenaariot. Käytännöllinen tapa järjestää se on alkuperän mukaan: laitteesta riippuvat tapahtumat, kuten akku ja lataus, käyttäjän aloittamat tapahtumat, kuten puheluun vastaaminen tai sovelluksen vaihtaminen, ja ulkoiset tapahtumat, kuten signaalin menetys hississä tai tunnelissa.
Ratkaisu keskeytyksen sattuessa
Näiden keskeytysten sattuessa odotettu toiminta on yksi seuraavista neljästä:
- Pyöriä taustalla: Keskeytys ottaa ohjat käsiinsä, kun sovellus jää taka-alalle. Se saa hallinnan keskeytyksen päätyttyä. Esimerkiksi puhelu tai FaceTime-puhelu, johon vastaat lukiessasi digitaalista kirjaa iBooksissa (tai vastaavassa sovelluksessa). Kun käyttäjä vastaa puhelimeen, iBooks odottaa puhelun päättymistä ja jatkaa sitten puhelun päätyttyä.
- Näytä hälytys: Hälytys katoaa ja voit työskennellä normaalisti. Ylätunnisteessa näkyy viesti ”SMS vastaanotettu”. Käyttäjä ei välitä siitä ja jatkaa sovelluksen käyttöä normaalisti. Myös muut mobiilisovelluksen hälytykset, kuten uusi kaveripyyntö Facebookissa tai WhatsApp-viesti, kuuluvat tähän kategoriaan. Mutta jos käyttäjä päättää lukea viestin, noudatetaan kohdassa 1 kuvattua toimintaa. Jos hälytys ohitetaan, sovelluksen tila pysyy muuttumattomana.
- Kehotus toimintaan: Herätykset on sammutettava tai torkutettava ennen työskentelyn jatkamista. Sama koskee sovelluspäivitysviestejä. Sinun on joko peruutettava tai hyväksyttävä muutokset ennen kuin jatkat. Toinen esimerkki on akun heikon varauksen varoitus – voit valita, jatkatko normaalisti vai siirrytkö virransäästötilaan, jos laite sen sallii.
- Ei vaikutusta: Esimerkki tästä on verkkoyhteyden avautuminen ja laitteesi yhteyden muodostaminen siihen. Kun kytket laitteen lataukseen, ei tarvita ilmoitusta tai toimintakehotusta. Se todennäköisesti toimii, kun jatkat sovelluksen käyttöä.
Näin ollen, riippuen testattavasta keskeytyksestä, ymmärrä toiminta ja katso, täyttääkö sovelluksesi sen. Yllä kuvatun toiminnan ei myöskään tarvitse olla sama kaikissa sovelluksissa ja laitteissa. Varmista, että otat selvää mobiilisovelluksesi erityispiirteistä.
Keskeytystestauksen testitapaukset odotetuilla tuloksilla
Kun odotetusta ratkaisusta on sovittu, jokaisesta keskeytyksestä tulee tavanomainen testitapaus, jolla on laukaiseva tekijä, toimenpide ja todennettavissa oleva tulos. Alla oleva taulukko näyttää, miten neljä yllä olevaa ratkaisua muuntuvat konkreettisiksi skenaarioiksi.
| keskeytys | Testiskenaario | Odotettu tulos |
| Saapuva puhelu | Soita puhelu lomakkeen ollessa puolitäytetty, vastaa siihen ja lopeta puhelu | Sovellus siirtyy taustalle ja jatkuu samalla näytöllä syötettyjen tietojen säilyttäen |
| Saapuva tekstiviesti tai push-ilmoitus | Lähetä viesti videon tai latauksen ollessa käynnissä ja jätä banneri huomiotta | Banneri ilmestyy ja katoaa; sovelluksen tila pysyy muuttumattomana |
| hälytys | Anna ajoitetun hälytyksen käynnistyä aktiivisen istunnon aikana ja hylkää se | Hälytys vaatii ensin toimintakehotuksen, minkä jälkeen sovellus jatkaa siitä, mihin se jäi |
| Alhainen akun varoitus | Tyhjennä laite varoituskynnykseen asti tapahtuman aikana | Varoitus näytetään, tapahtumaa ei peruuteta, eikä virransäästötila riko näyttöä |
| Verkkoyhteyden katkeaminen | Poista yhteys käytöstä pyynnön aikana ja palauta se sitten | Näytetään selkeä viesti, kaatumista ei tapahdu ja pyyntö suoritetaan tai epäonnistuu turvallisesti palautuksen yhteydessä. |
| Lataus kytkettynä tai irti | Laturin kytkeminen ja irrottaminen aktiivisen istunnon aikana | Ei vaikutusta — sovellus jatkuu ilman näkyvää muutosta |
| Sovelluksen päivitysmuistutus | Nosta päivityskehote sovelluksen ollessa käytössä | Käyttäjä voi peruuttaa tai hyväksyä, ja taustalla oleva näyttö säilyy kummankin valinnan jälkeen. |
Pidä yksi rivi keskeytystä kohden kriittistä näyttöä kohden sen sijaan, että käyttäisit yhtä riviä keskeytystä kohden koko sovellukselle. Maksunäyttö, kirjautumisnäyttö ja pitkä lomake epäonnistuvat kukin eri tavalla, ja yksi yleinen tapaus piilottaa tämän.
Nyt kun ymmärrämme, mitä keskeytystestaus on ja mitä se pitää vahvistaa, on aika puhua siitä, miten se tehdään.
Kuinka tehdä keskeytystestaus
Katso tämä lausunto: iBooksin on toimittava taustalla, kun käyttäjä saa saapuvan puhelun.
Eikö tätä kutsuisi iBooks-sovelluksen toiminnalliseksi vaatimukseksi? Tiedän, että kutsuisin.
Joten keskeytystestaus on osajoukko Toiminnallinen testaus mobiilisovellukselle. Keskeytystestauksessa käytetään samoja mobiilisovellusten testauskehyksiä ja -työkaluja. Testaajien tehtävänä on keksiä nämä skenaariot. Kun se on tehty, suunnitellaan testitapaukset ja suoritetaan ne täsmälleen samalla tavalla kuin mikä tahansa muu testi.
Käytännössä sarja on lyhyt ja toistettavissa:
- Listaa kriittiset käyttäjäpolut — kirjautuminen, maksaminen, lataus, pitkät lomakkeet, median toisto.
- Merkitse jokainen mahdollinen keskeytys yllä olevasta luettelosta kullekin matkalle.
- Sovi kunkin parituksen odotetusta ratkaisusta tuotteen omistajan kanssa, koska ei ole olemassa yleismaailmallista oletusratkaisua.
- Suorita keskeytys riskialttiimmalla hetkellä, älä tyhjäkäynnillä, ja jatka sitten.
- Tarkista tila, tiedot, istunto ja muisti jatkamisen jälkeen, äläkä ainoastaan sitä, että sovellus on edelleen auki.
Lisätietoja laajemmasta tieteenalasta on osoitteessa Mobiili testaus opetusohjelma ja esimerkkitapaukset Mobiilisovelluksen testaus.
Työkaluja ja tekniikoita keskeytysten simulointiin
Yllä olevat skenaariot on tuotettava pyynnöstä eikä odotellessa, ja jokainen alusta tarjoaa keinon tehdä tämä.
- Android Emulaattorin laajennetut ohjaimet: Emulaattorin sivupaneeli simuloi saapuvaa puhelua, tekstiviestiä, akun varaustasoa ja laturin tilaa sekä matkapuhelinsignaalin voimakkuutta, joten suurin osa keskeytyslistan sisällöstä voidaan nostaa ilman toista puhelinta.
- iOS-simulaattori ja Xcode: Yhteyksien ja laitteiston tiloja voidaan muuttaa simulaattorista ja laitteen asetuksista, kun taas paritettu fyysinen laite kattaa puhelutilanteet, joita simulaattori ei voi aiheuttaa.
- Toinen fyysinen laite: Soittaminen tai viestin lähettäminen testattavaan laitteeseen toisesta puhelimesta on edelleen luotettavin tapa toistaa todellinen keskeytys, erityisesti ajoitusherkissä tapauksissa.
- Laite asetukset: Lentokonetila, Wi-Fi-kytkimet, Älä häiritse -tila, akunsäästö ja ajastetut hälytykset kattavat yhteys- ja virrankatkokset oikeilla laitteilla.
- Automaatiokehykset: Sama automaatiopino, jota käytetään toiminnallisen paketin muissa osissa, voi ohjata sovellusta ennen keskeytystä ja sen jälkeen, joten ansioluettelon tarkistus tehdään väistämättä eikä sitä ikään kuin pysäytetä.
- Oikeiden laitteiden pilvet: Isännöity laitefarmi laajentaa kattavuutta eri valmistajien ja käyttöjärjestelmäversioiden välillä, mikä on tärkeää, koska keskeytysten käsittely on yksi alueista, joilla toimittajien mukautukset eroavat eniten toisistaan.
Olipa mekanismi mikä tahansa, kirjaa keskeytyksen tarkka hetki testitapaukseen. ”Keskeytys latauksen aikana” ja ”keskeytys latauksen jälkeen” ovat eri testejä, joilla on erilaiset vikaantumistilat.
Keskeytystestauksen parhaat käytännöt
Muutamat tavat erottavat hyödyllisen keskeytyssarjan ruudun rastittamiseen perustuvasta harjoituksesta.
- Keskeytys pahimmalla hetkellä: Target sillä hetkellä, kun tapahtuma vahvistetaan tai tiedostoon kirjoitetaan, koska silloin tila on haavoittuvin.
- Testaa ansioluetteloa, älä keskeytystä: Vika ilmenee lähes aina ohjauksen palauttamisen jälkeen, joten väitteet kuuluvat palautetulle näytölle.
- Kattaa verkon muutoksen molemmat suunnat: Yhteyden menettäminen ja sen palauttaminen ovat erillisiä tapauksia, ja jälkimmäinen ohitetaan useammin.
- Vaihtele kestoa: Kahden sekunnin hälytys ja kymmenen minuutin puhelu kuljettavat sovellusta läpi eri elinkaaripolkujen, mukaan lukien sen poistamisen muistista.
- Levinnyt eri käyttöjärjestelmäversioihin ja heikkolaatuisiin laitteistoihin: Taustahäivytys on paljon aggressiivisempaa rajoitetuilla laitteilla, mikä paljastaa lippulaivapuhelimen piilottamia puutteita.
- Automatisoi toistettavat: Yhteydenpito ja akun keskeytykset automatisoituvat siististi, mikä vapauttaa manuaalista työtä puhelu- ja hälytystilanteisiin.
- Tarkkaile resurssien käyttöä ja tilaa: Keskeytys, joka vuotaa muistia tai kuluttaa akkua jatkamisen yhteydessä, on vika, vaikka näyttö näyttäisi oikealta, mikä yhdistää tämän työn mobiilisovelluksen suorituskyvyn testaus.
Eikö keskeytystestaus ole sama asia kuin palautustestaus?
Ei se ole. Palautustestaus validoi palautumisen epäonnistumisesta. Keskeytys ei välttämättä ole epäonnistuminen – se on pelkkä häiriötracseen.
Se on kuin pilkun ja pisteen välinen ero englannissa. Ero on vain tekninen, mutta kuva on selkeä. Palautustestaus kysyy, voiko sovellus palata toimintaan, jos jokin rikkoutui; keskeytystestaus kysyy, rikkoutuuko mikään ollenkaan, kun jokin muu tulee etualalle.
Tämä on kaikki, mitä sinun on tiedettävä aloittaaksesi keskeytystestauksen – tärkeän ja intuitiivisen mobiilisovellustestauksen haaran.

