Ahogy a mobilalkalmazások fejlesztése egyre nagyobb teret hódít, úgy változnak a mobileszközök és a felhasználók preferenciái is, ami egyre nagyobb kihívások elé állítja a fejlesztőket és tesztelőket egyaránt.
Cikkünkben megvizsgáljuk milyen kihívásokkal is állnak szemben a fejlesztő csapatok és hogyan tudják ezeket az akadályokat leküzdeni.
A különböző mobilalkalmazás típusok
Az előző cikkünkben átnéztük, hogy milyen mobilalkalmazás típusok vannak (natív, hibrid, web) és ezeknek az előnyeit valamint hátrányait. Már ez kihívást jelent, hogy többféle mobilalkalmazás-típus létezik. Nézzünk egy példát!
A natív alkalmazások hozzáférnek a mobiltelefon különböző szenzoraihoz, tárhelyéhez (például: bluetooth, képgaléria), míg egy webes alkalmazás nem, vagy csak korlátozottan fér hozzá. Ezáltal teljesen máshogy kell fejleszteni és tesztelni egy natív alkalmazást.
Például egy natív alkalmazás esetén, amivel képet is tudunk készíteni, először engedélyt kell kérni a felhasználótól annak használatához (erre egy későbbi cikkünkben részletesen is kitérünk). Így látható, hogy a fejlesztés és tesztelés is nagyobb erőforrást igényelhet.
Operációs rendszerek és böngészők
Az operációs rendszer a mobileszköz motorja. Segíti, hogy az alkalmazások fussanak az eszközön. Minden operációs rendszer más és más a felépítésében, működésében és kinézetében. Az Android operációs rendszer eltér az iOS operációs rendszertől és mindkettő különbözik a Windows operációs rendszertől. Egy operációs rendszeren belül az is nehézséget okozhat, hogy a különböző verziók, például az Android Nougat támogat olyan újabb funkciókat, amiket egy korábbi Android verzió nem támogat (természetesen ugyanez igaz a különböző iOS verziókra is).
Az operációs rendszer változatossága leginkább a natív alkalmazásokat érinti, míg a webes alkalmazások esetén a különböző böngészők (Chrome, Safari, stb) és azok verziói komoly fejtörést okozhatnak a fejlesztőknek és tesztelőknek. Ha szeretnénk minden operációs rendszert, minden verzióval tesztelni az kimerítő tesztelés lenne, ami pedig nem lehetséges, ez az egyik tesztelési alapelv.
Kijelző méret
Az operációs rendszerekhez hasonlóan van egy másik piaci változó, ami nagy kihívást jelent a fejlesztésben, ez pedig nem más, mint a kijelző méret. A mobiltelefon gyártók, hogy megfeleljenek a különböző felhasználói igényeknek, sokféle kijelző mérettel gyártanak telefont, ami szintúgy megnehezítheti a fejlesztést és tesztelést. Fontos, hogy az alkalmazás reszponzív legyen és minden kijelzőméretben és felbontásban megfelelően megjelenjen. Itt is érvényes az, hogy képtelenség minden kijelző méretet letesztelni, mert az túl költség- és időigényes lenne.
Hálózattípus és sebesség problémák
Manapság szinte minden alkalmazásnak szüksége van internetkapcsolatra, ezért a hálózat tesztelése olyan dolog, amely nélkül a mobilalkalmazások tesztelése nem tekinthető befejezettnek. A mobilhálózat sávszélességével kapcsolatos fő kihívás az, hogy bár a végfelhasználó lassabb hálózaton van, elvárja, hogy az alkalmazás megfelelően működjön.
A hálózattal kapcsolatos problémák esetén tesztelni kell a sávszélességet és a válaszidőt is. Amennyiben az egyes hálózatoknál nagyon sokáig tart az átvitel, akkor ez problémaként felvethető, és továbbítható a fejlesztő csapatnak.
Gyorsan változó felhasználói követelmények
A felhasználói követelmények manapság gyorsan változnak. Például a felhasználó szeretne egy bejelentkezés gombot az alsó navigációs menüre, majd később meggondolja magát és más módon szeretne bejelentkezni.
Több ezer ilyen forgatókönyv létezik, ezt nem lehet megjósolni. A felhasználói igényeket befolyásolhatják a legújabb trendek, de a rossz felhasználói design is. Emiatt a felhasználói követelmények folyamatosan változnak, ami kihívást jelent a mobilalkalmazások tesztelésében.
A változó felhasználói követelmények megváltoztatják a szoftverfejlesztés teljes folyamatát. Kihívást jelent, mivel a tesztelőknek folyamatosan részt kell venniük az alkalmazásfejlesztésben. A változó követelmények kezeléséhez megfelelő fejlesztési módszertant kell választanunk, mint például az agilis fejlesztést, amivel gyorsan tudunk reagálni a felhasználói követelmények változására.
A fent felsorolt kihívások nem az egyedüli kihívások, amelyekkel a mobilalkalmazások tesztelése során szembesülhetünk. Soha nem tudhatjuk milyen további kihívások várnak ránk ezért fontos, hogy a csapat gyorsan tudjon reagálni mind a mobilok fejlődésével kapcsolatos kihívásokra, mind a felhasználói igényekhez.