Kvalitetssikring til Android behøver ikke være et mareridt

Har du nogensinde hørt om Android-udviklere, der klager over fragmentation? Jeg læste for nylig en artikel om en app-udviklingsvirksomhed i Kina, som udtalte at de tester på over 400 Android-devices. Virksomheden har over 70 mio. downloads, og igen; de tester med over 400 forskellige telefoner og tablets for hver app, de releaser!

Illustration: Privatfoto

Det må være et sandt mareridt.

Lad os rulle tiden lidt tilbage. I 2011 troede vi i Eniro også, at fragmentation ville blive et stort problem for os. Teamet brugte mange aftener og weekender på at teste på hver enkelt Android-device og styresystem, som vi havde fået indrapporteret fejl på. Gæt, hvad vi opdagede? Ja, der er mange forskellige devices, men de fleste af problemerne kom fra klassiske problemer med software engineering. Vi oplevede crashes på specifikke devices, men de blev udløst af telefoner, der havde for lidt memory eller kørte flere processorer, som var skyld i, at underliggende problemer oftere dukkede op.

En stor andel af vores Android-problemer skyldtes også, at vi ikke gav Android-udviklingen nok opmærksomhed fra start af. Kun én person i vores team sad på det tidspunkt med Android-udviklingen, og få medarbejdere havde en Android-telefon. Jeg mener, at den bedste tilgang er, at alle i udviklingsteamet skal begynde at gå med to telefoner, så man på den måde sikrer, at alle i teamet også har tilgang til Android.
At forsøge at supportere alle Android-telefoner er det samme som at prøve at supportere hver eneste model af iPhone og alle større iOS-versioner tilbage til 2007. Det er ikke indsatsen værd. Hvis du tager dig tiden til at teste grundigt på Android og udvælger 4-5 Android-telefoner, som bliver mest brugt (hos Krak tester vi lige nu primært på Samsung Galaxy S II, HTC Desire (+HD), HTC Wildfire,HTC Desire (+S) og HTC Incredible S), så vil dit største fragmentationsproblem være at tilpasse til forskellige skærmopløsninger og formater. Det kræver lidt mere arbejde end de fire displays, du nu ser på iOS-devices. Men det er arbejdet værd.
For Krak sætter vi grænsen ved Android 2.1-devices med en skærmstørrelse på mindst 320x480. Det dækker de fleste Android-telefoner, der er lavet inden for de sidste 2 år. Hvis en bruger kører med mindre end OS 1.6, vil appen slet ikke være tilgængelig.

Det er overdrevet at snakke om, at Android-fragmentation er et uovervindeligt issue for udviklere. Vores største udfordringer har været traditionelle software engineering-problemer, og det viste sig, at kun en håndfuld af problemerne var helt device-specifikke. Det er lidt mere komplekst at udvikle til Android, men det er tiden værd.

Se på, hvad Google har bragt til deres eco-system: Det mest åbne, konkurrencedygtige marked for smartphones, en open-source OS og uhæmmet distribution. Du kan implementere øjeblikkeligt, og du får transparente real-time transaktioner i Google Wallet. De fordele betyder, at I bestemt stadig skal have Android som en prioritet.

Kommentarer (1)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
#1 Kresten Kjaer

Monkeyrunner, en usb hub med telefoner og et bash script der kører testene på de tilsluttede telefoner. Det var opskriften på, at få kørt tests hos os. Fordelen er også, at vi kan tilslutte nye telefoner, hvis vi finder fejl på dem, og så køre vores test suite automatisk. Men vi har så heller ikke ressourcer til manuelt at trykke alle menuer igennem :-)

Alternativt er https://www.lesspainful.com/ super smart.

  • 2
  • 0
Log ind eller Opret konto for at kommentere