Ny hjælp til Android-udviklere: Test din app på 13 devices - samtidig

Hvordan tester man en applikations grafiske brugergrænseflade på forskellige Android-mobiler? Det spørgsmål har givet anledning til en ny automatisk webbaseret test.

Prøv at spørge en Android-udvikler, hvordan hans app ser ud på en Sony Ericsson X10 mini, en HTC Hero, Samsung Galaxy mini, LG P500 eller på en HTC Gratia.

Oftest vil han have svært ved at svare. Forskelle i skærmstørrelser og opløsning, operativsystem-versioner, tilgængelig hukommelse og cpu-hastighed på tværs af Android-markedet gør nemlig ofte livet svært for udviklere, fordi de ikke ved, hvordan app'en ser ud på forskellige Android-mobiler.

Derfor har software-udviklerne Jonas Maturana og Erik Mejer Hansen fra det aarhusianske udviklingshusTrifork bygget en løsning, som hurtigt og nemt kan teste Android applikationer direkte på fysiske telefoner. Test-siden blev lanceret i sidste uge, og det lille nystartede firma har allerede to kunder.

For at få testet en app, skal man selv skrive en test. Derefter uploades testen sammen med app’en til sitet Lesspainful.com, og få minutter senere har man resultatet. Testen er fuldautomatisk og resultatet kommer prompte. Se en demonstration af systemet i videoen.

»Vi vil gerne gøre det nemmere for folk at skrive applikationer. Vi har lavet et system, hvor man med en simpel test kan se, hvordan ens app ser ud på mange forskellige Android-mobiler,« siger stifter Erik Mejer Hansen og fortsætter:

»Udviklerne tester ofte på den ene telefon, man har koblet på sin computer, men det betyder også, at man ikke ser app'en på andre telefoner. Men man vil gerne have testet app'en på andre telefoner op til leverancen. Så det er egentlig den her panik ude hos udviklerne, vi gerne vil afskaffe.«

Testen skrives i cucumber

Testen skal skrives i sproget cucumber. Grunden til, at valget faldt på dette sprog, var, at det er relativt brugervenligt:

»Vi ville gerne have, at den test, man skal skrive, er på engelsk og ikke er decideret kodesprog. Cucumber er lavet til at teste websides med, men vi har i andre sammenhænge oplevet, at det fungerer godt til at lave interface-tests på mobiltelefoner med,« siger Jonas Maturana og fortsætter:

»Vi skalerer ret godt, fordi vi kan køre flere tests parallelt, så det tager ikke meget længere tid at køre testen på én telefon end det gør på 20 telefoner for os, hvilket det jo ellers ville, hvis man skulle teste telefonerne én og én.«

I princippet kan systemet teste applikationer på 310 android-mobiler, men indtil videre har firmaet kun anskaffet de 13 mest solgte Android-mobiler herhjemme. Antallet skal dog udvides med tiden.

»Vi har ikke så mange endnu, men vi har mange af dem, der findes i Danmark, hvor vi dækker cirka 80-90 procent af Android-mobil-markedet,« siger Jonas Maturana.

Forskellig hardware giver behov

»Der er mange forskellige versioner af Andriod, der alle sammen kører på forskellige hardwareplatforme. Så det er en fragmenteret platform, i modsætning til Windows Phone og iPhone, og derfor er der ofte brug for at teste Android-applikationer på forskellig hardware.«

Faktisk kan test-fasen være afgørende, mener de to stiftere:

»En app kan gå i stykker, og slet ikke virke på nogle mobiler på grund af forskelle i hardware og styresystemer, så derfor er det vigtigt at få testet, inden man launcher den,« siger Erik Mejer Hansen.

Mobil-app testen har minutbaseret afregning, så jo flere tests man laver, jo mere betaler man.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (28)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Svend Eriksen

Det bliver ofte nævnt, at Android er et helt åbent system, men her ser man helt tydeligt prisen for den åbenhed. Fragmenteringen i Android-universet er efterhånden tydelig for enhver, og det er virkelig en udfordring som Google må tage seriøst.

Hverken iOS eller WP har det problem, og det kan vise sig at de overhaler Android indenfor et par år, fordi udviklerne og forbrugerne bliver trætte af den meget uregelmæssige opførsel af apps til Android.

  • 9
  • 14
Lars Tørnes Hansen

Hverken iOS eller WP har det problem, og det kan vise sig at de overhaler Android indenfor et par år, fordi udviklerne og forbrugerne bliver trætte af den meget uregelmæssige opførsel af apps til Android.

WP overhale Android? Uden Apps overhalder den ingenting - jo måske Symbian som Nokia lægger i graven til fordel for WP.

iOS er fint, og sælger udmærket, men Android sælger mest.

Det er udviklernes hovedpine med forskelligheden. Brugerne er helt ligeglade bare deres App virker på deres telefon.

Når en bruger shopper telefon er prisen vigtig, og en iPhone er ikke lige den billigste i forhold til en Android, derfor vil der også være kunder til Android.

  • 18
  • 2
Casper Bang

Hverken iOS eller WP har det problem

Nonsense. Prøv engang at kigge på iOS enheder og de permutationer der p.t. eksisterer imellem skærmopløsning, wifi, gprs, gps, accelerator-måler, kompas, CPU hastighed, memory, grafikacceleration mv.

Har Android flere permutationer? Ja! Men det er interesant som det konstant bliver udråbt som dommedagspropaganda for Android platformen, og ignoreret for iOS enheder. Og mens Android har en komplet emulator, har iOS jo kun en simpel simulator.

Men godt initiativ med test-siden.

  • 21
  • 1
Martin Bøgelund

Hverken iOS eller WP har det problem, og det kan vise sig at de overhaler Android indenfor et par år, fordi udviklerne og forbrugerne bliver trætte af den meget uregelmæssige opførsel af apps til Android.

Grunden til at iOS ikke har det problem er, at iPhone er en meget éntydig hardware-platform.

Grunden til at WP ikke har det problem er, at WP ikke er særlig udbredt, og (endnu) ikke er særlig forskelligartet mht versioner.

Hvis MS skal holde fragmenteringen i skak, skal de derfor opstille meget snævre krav til hardware, og holde WP i udviklingsmæssig ro.

For mig ser det ud som om, at du forventer at WP overhaler Android på basis af, at Android udvikler sig voldsomt over en stor hardwarespredning, mens WP står næsten stille på konform hardware.

Så jeg vil da heppe på WP - bare for at se hvordan sådan en stillestående overhaling ser ud :-)

  • 10
  • 3
Jakob Damkjær

Tjoe... tror der er nogen der skal finde læsebrillerne frem igen...

iOS dimser sælger mere og har større install base end Android.

Android sælger kun bedre end iOS man ser på hvor mange
smartphones der sælges... der er lidt mere end del af markedet
hvis man vil se det fulde billede for det scope som giver mening
for app udviklere...

Lille forskel der er nem at overse i farten.

  • 5
  • 5
Martin Leopold

Hej,
For mig virker det lidt besynderligt, at det ikke er producenterne, som stiller en sådan service til rådighed - jeg mener, det er da i deres interesse at gøre det let at teste på deres apparater?

Nokia har nedenstående portal (som iøvrigt ser ud til at være drevet af et firma der leverer en løsning der ligner den der er beskrevet oven for).

http://www.developer.nokia.com/Devices/Remote_device_access/

  • Martin
  • 0
  • 0
Erik Hansen

Du har helt ret i at det er i producenternes interesse at gøre det nemt at teste på deres devices.
Motorola har en lignende service og HTC er vist ret flinke til at låne telefoner ud til udviklere. Og det er helt sikkert et godt sted at starte.
Der hvor vi mener vi har noget at byde ind med er at man kan bruge den samme test til at teste på tværs af hardware producenter.
Ind til videre har producenterne ikke været parat med en løsning der kan det (heldigvis for os).
/Erik Mejer Hansen (medstifter af LessPainful.com)

  • 1
  • 0
Jacob Nordfalk

... lige indtil jeg selv gik i gang

(https://market.android.com/search?q=nordfalk&so=1&c=apps)

Appsne til teoriprøver til kørekort er afprøvet på Android 1.5 frem til Andriod 3.2. Men det har i store træk været spildt krudt at trække den igennem alle de telefoner og tavler (undskyld tabletter nej tæblets :-).

90% af problemerne kunne jeg finde.... ved at fyre op under emulatoren!

De eneste problemer hvor fysiske telefoner var en reel hjælp var:

1) Bambus-tavler uden SD-kort (ja, jeg ku vel ha lavet en i emulatoren uden SD)

2) Sony Ericsson Xperia havde et crash pga at jeg viste 25 ret store bitmaps i ét vindue uden at skalere dem ned.

3) Brugervenlighed. På tavler sad knapperne upraktisk i forhold til hvordan man skal betjene programmet.

Dermed ikke været sagt at forskellig hardware ikke kan være et problem.

Det kan det, hvis man kommer ud i hjørnerne af f.eks. Bluetooth eller lydoptagelse, hvor de underliggende drivere fra producenterne er forskellige.

Men det har vist ikke mere med Android at gøre end med f.eks. almindelige PCer har. Og da det hed J2ME var det såvidt jeg ved langt værre.

En anden ting er at afprøvning på forskellige fysiske enheder kan hjælpe med er at finde fejlantagelser i sin kode. Jeg har på fornemmelsen at den der "fragmentering"-klagesang nogengange skyldes at udviklerne ikke altid har forstået platformen godt nok (og det er faktisk en udfordring). Når fejlantagelser så bliver afdækket er det lidt for nemt bare at råbe "fragmentering".

Nå, hvis nogen alligevel gerne vil prøve deres apps på nogle fysiske enheder så holder vi engang imellem gratis arrangementer på Ingeniørhøjskolen hvor man kan afprøve sine apps på et dusin forskellige enheder.

http://cwsa.dk/arrangementer/11/android-afprovning/android-afprovning/

http://cwsa.dk/arrangementer/11/programmering-android/programmering-andr...

Arrangementerne annonceres på http://groups.google.com/group/android-ihk-2011

For resten findes der vist en lignende tjeneste på http://developer.motorola.com/fasttrack/deviceanywhere/

  • 8
  • 1
Svend Eriksen

WP overhale Android? Uden Apps overhalder den ingenting - jo måske Symbian som Nokia lægger i graven til fordel for WP.


Uden apps? WP7 har det hurtigst voksende app marked lige nu. Der findes over 20.000 applikationer på markedet, og det vokser hurtigt. :)

Jeg kan sagtens se iOS og WP7 lægge Android bag sig. Android er i bund og grund et nørdsystem, hvor man kan konfigurere alting i detaljer. Det interesserer et fåtal af mobilbrugere, som hellere vil have et system der er flot og hurtigt. Android hakker når man pinch zoomer eller scroller, og omkring 60% kører stadig med ver. 2.1, hvilket også åbner en ny bredside med kompatibilitet og sikkerhed.

Android er et meget åbent system, og det har sine fordele. Men jeg tror ulemperne kommer til at opveje det, fordi de forskellige fabrikanter har mere og mere brug for at skille sig ud, og derfor prøver at tvinge Android i alle mulige retninger med forskellige brugerflader af svingende kvalitet.

For forbrugerne giver det meget forskellige brugeroplevelser og oplevelser med applikationer som ikke virker. Det gør man ikke på iOS og WP7.

  • 4
  • 6
Heine Andersen
  • 2
  • 3
Jonas Maturana Larsen

Hej Jacob

Det er godt at høre at du ikke har haft de store problemer med fragmentering.
Jeg kan forestille mig at det er fordi i dine apps bruger en del af de interface-elementer der kommer med Android.

Vi har på alle de apps vi har testet på fundet forskellige "mærkelige" fejl.
Det kan være alt fra crashes på enkelte telefoner til subtile gui-fejl.
Det skal lige siges at størstedelen af de testede apps har brugt rigtigt meget krudt på at lave et lækkert interface.

Et par eksempler:
En apps bagrundsbillede forsvandt på alle vores LG telefoner. Men det forsvandt på en sådan måde at kan sagtens kunne bruge app'en og kun ville ane uråd hvis man vidste den skulle være der.
(Dette var en ukendt fejl på en udbredt app der havde været i market i flere måneder)

Samme app havde problemer med alignment i bunden af appen.

En anden app crashede på en minor version af Android 2.1.

På nogle telefoner giver webviews sort kant.

Stort set alle producenterne har deres egne standardfarver som påvirker hvordan en app ser ud.
En del udviklere bliver f.eks. overrasket over at Motorola telefoner som default giver markerede inputfelter en rød ramme. Det er ikke så heldigt hvis man i sin app markerer fejl med en rød ramme.

mvh
Jonas
medstifter af LessPainful

  • 7
  • 1
Svend Eriksen

Ejer du en Android, eller er det noget du sidder og læser rundt omkring, for jeg kan ikke nikke genkendende til din kritik ?


Nej, jeg ejer ikke en, men flere af mine venner, min lillebror, min far og stedmor gør. Så jeg kender skam udmærket Android, og jeg står ved min kritik. Hvis du sammenligner, hvor flydende det kører på en iPhone, en Windows Phone og en tilsvarende Android telefon, så er der i mine øjne ingen tvivl om, at Android taber.

Jeg siger ikke, at Android er ubrugeligt, for det kan skam være rigtig lækkert med utallige indstillingsmuligheder, og applikationer, der har adgang til meget mere af telefonen end på iPhone eller WP. Jeg tror bare ikke at de fordele er noget som brugere vægter ret højt i forhold til at Android også kæmper med uensartede brugeroplevelser, applikationer som kører meget forskelligt, og nogle gange ikke virker.

  • 4
  • 4
Anders Kjærgaard Hansen

Både Nokia, HTC og Sony Ericsson har vi haft rigtigt gode erfaringer med at låne fysiske telefoner af.

Nokia er i den sammenhæng markant bedre, med webadgang til bestilling, og leveret med betalt returkasse til DHL. Så bliver det ikke nemmere.

Men det er stadig en stor opgave at teste fysiske telefoner så derfor synes jeg da at det er et spændende initiativ at kunne køre samme test på flere telefoner nemt.

Der findes også flere andre online tjeneste, f.eks Perfecto Mobile hvor du kan få "fuld" online adgang til en fysisk enhed i en lagerhal et sted. Det og Nokia Remote Device Access virker dog bedst til applikationer og ikke så godt til spil hvor du skal have hurtigere touchfeedback til skærmen.

Men det virker fint til at teste om det virker eller ikke virker.

  • 1
  • 0
Heine Andersen

Jeg tror bare ikke at de fordele er noget som brugere vægter ret højt i forhold til at Android også kæmper med uensartede brugeroplevelser, applikationer som kører meget forskelligt, og nogle gange ikke virker.

Siden Android sælger bedst er forbrugerne så ikke enige med dig. Btw så er den hurtigste smart phone jeg har oplevet en samsung galaxy 2. men self. kører en HTC wildfire med skod cpu til 1500 kr. ikke ligeså godt som en iphone til 5K.

  • 5
  • 3
Martin Kollerup

Jeg kan sagtens se iOS og WP7 lægge Android bag sig. Android er i bund og grund et nørdsystem, hvor man kan konfigurere alting i detaljer. Det interesserer et fåtal af mobilbrugere, som hellere vil have et system der er flot og hurtigt. Android hakker når man pinch zoomer eller scroller, og omkring 60% kører stadig med ver. 2.1, hvilket også åbner en ny bredside med kompatibilitet og sikkerhed.

Ja, det er rigtigt. Men det er også det fede ved det. Man kan selv udvikle videre på kernen, og ændre i alt på den. Mobil Producenterne er også begyndt at åbne op for bootloaderen så det bliver nemmere for os andre.

Og ja, den ROM producenterne kommer ud med, er elendige. De lagger osv. (har kun set en HTC som kører smoooth.) Men hvis man bare er lidt nørd, så har man installaret en custom rom! :D <- Også er man jo ude i at udviklerne skal teste på endnu en platform :D

  • 1
  • 0
Anders Kjærgaard Hansen

Og det er lige nøjagtigt det der kan gå hen og koste Android sin position i kampen.
Grunden til at Android (som jeg ser det) vokser voldsomt pt er ikke at man kan konfigurere alt. En helt utrolig stor del af Android brugerne er ligeglade. De ville gerne nøjes med mulighederne du får fra en iPhone - men køber Android pga. prisen. Og til dels pga. mulighed for forskelligt hardware.

Når WP lander med en version der bliver lanceret og markedsført i Danmark, og hvis Nokia kan holde hvad de lover, nemlig at de går efter alle segmenter og ikke kun high-end smartphones - så tror jeg helt ærligt Android får det hårdt.

Nørderne vil stadig elske den - men de andre (som der stadig er flest af) tror jeg vil flytte sig.

Men lad os nu se...

  • 2
  • 2
Martin Kollerup

Når WP lander med en version der bliver lanceret og markedsført i Danmark, og hvis Nokia kan holde hvad de lover, nemlig at de går efter alle segmenter og ikke kun high-end smartphones - så tror jeg helt ærligt Android får det hårdt.


Det kommer jo an på, om nokia kommer med nogle telefoner, som har en god hardware til en god pris. Nu ser vi fx. at HTC kommer ud med årets mobil i starten af året. Men hvis nokia ligger ud med en så god standard, kan det godt gå hen og blive hårdt for vores kære Android! :D

  • 1
  • 0
Svend Eriksen

Siden Android sælger bedst er forbrugerne så ikke enige med dig. Btw så er den hurtigste smart phone jeg har oplevet en samsung galaxy 2. men self. kører en HTC wildfire med skod cpu til 1500 kr. ikke ligeså godt som en iphone til 5K.


Android sælger rigtig godt, det er rigtigt. Jeg tror bare, at grunden til at Android sælger godt er, at mange rigtig gerne vil have en smartphone, og Android har indtil for nyligt været eneste reelle alternativ til en iPhone.

Du nævner selv, at der selvfølgelig er stor forskel på en Samsung Galaxy 2 og en Wildfire. Der tror jeg bare at mange forbrugere (ikke-nørderne) som ikke læser ret meget om telefoner og OS, de køber en Wildfire fordi der er en lille grøn robot på, og de har hørt om Android.
Når de så kommer hjem og tænder den, så bliver al skylden for den dårlige brugeroplevelse lagt over på Android, fordi det jo i deres øjne bare er en Androidtelefon.

Min pointe er ikke at der ikke må være forskel på brugeroplevelserne, men som jeg ser det, så har Google ladet stå til når det kom til at give Android et ordentligt image og sørge for at producenterne ikke lancerede skodprodukter og lod være med at opdatere med nye versioner af Android. Det tror jeg vil få mange forbrugere til at dømme Android ude som et uigennemsigtigt system for nørder.

  • 0
  • 4
Jacob Nordfalk

@Jonas
Tak for uddybning. Ja, jeg har mest brugt standardkomponenter og et multi-touch-bibliotek og mit fokus har været en funktionel, pæn brugerflade men jeg er ikke gået i gang med at designe komponenter selv.

Det kan sagtens være der er nogle subtile grafikfejl, men dem tror jeg mine brugere ser stort på (hvis de opdager dem).

Nogle af de problemer jeg ser i mine kurser i Android er de samme som webdesignere havde i HTMLs barndom: Man har en forventning om at kunne styre layout fuldstændigt præcist.

Din bemærkning "En del udviklere bliver f.eks. overrasket over at Motorola telefoner som default giver markerede inputfelter en rød ramme. Det er ikke så heldigt hvis man i sin app markerer fejl med en rød ramme." afspejler at man enten bør følge platformens farveskema (og ikonskema) eller helt omdefinere det.
Blandinger giver problemer. Som en webdesigner der specificerer tabelstørrelser i punkter uden at tage stilling til at brugeren kan have valgt en anden tekststørrelse som standard.

Derudover er der crashes. Det er selvfølgelig en helt anden sag.
Der er heldigvis meget præcise værktøjer til at logge og rapportere crashes, både i Android Marked og udenfor (f.eks. http://code.google.com/p/acra/) og dukker de op kan man som udvikler vælge at stoppe distributionen af ens program til netop den præcise enhed indtil man har kigget nærmere på fejlen.

@Bo, jeg kan se i dine andre indlæg at du er yderst begejstret for Windowstelefoner.

Det har du jo lov til at være, og en tredje spiller ville da være interessant. Det har vist bare ikke så meget med fragmentering at gøre.

Om man køber et hakkebræt eller en supertelefon må være op til forbrugeren. Jeg tror heller ikke at PC-Windows har lidt synderligt over at der er blevet solgt billige PCer.

Spørgsmålet er om 'fragmentering' er værre på Android end så mange andre steder med mange forskellige producenter af enheder?

Windows, Symbian- og Mac-telefoner er her et dårligt sammenligningsgrundlag pga de forsvindende få producenter.
(der er selvfølgelig også holdningen at der kun bør være én producent og monopol?)

J2ME og desktopstyresystemer (Windows/Linux) er et rimeligt sammenligningsgrundlag, og her har man vist aldrig klaget over 'fragmentering'en, selvom den er åbenlyst værre.

Hilsen Jacob

  • 3
  • 0
Jacob Nordfalk

Selvom jeg ikke synes fragmenteringen er et så stort problem er det dog en fed portal og et godt initiativ til at få afprøvet sine apps.

Fragmentering, det har vi har på browsermarkedet. Og jeg synes ærligt talt det er bedre end i 1990'erne hvor man blev udelukket fra diverse websider fordi jeg kørte Linux og derfor ikke havde Internet Explorer.

  • 3
  • 0
Svend Eriksen
  • 1
  • 3
Jacob Nordfalk

Du skrev

"
Fragmenteringen i Android-universet er efterhånden tydelig for enhver, og det er virkelig en udfordring som Google må tage seriøst.

Hverken iOS eller WP har det problem.
"

Jeg (og flere andre) har påpeget flere gange på hvorfor "Hverken iOS eller WP har det problem." (en eller meget få producenter).

Jeg synes også jeg har svaret ret uddybende omkring 'fragmenteringen'.

Så hvad for noget i din kritik synes du jeg ikke har forholdt mig til?

Og ku du venligst forholde dig til mit udsagn om at områder med reel fragmentering er f.eks. browserområdet eller J2ME (og at i sammmenligning er problemet meget mindre på Android)

  • 3
  • 1
Svend Eriksen

Jacob:
Du skriver jo selv, at du ikke mener at fragmenteringen er et problem. Der er vi to åbenbart ret uenige, og Google har også selv for nyligt erkendt, at netop fragmentering er et problem ved at lancere deres “Android Compatibility Package”. Et problem her er, at den ikke rammer brugere af ældre versioner af Android end Honeycomb, og siden omkring 90% af androidbrugerne bruger version 2.2 eller ældre, så står en stor del af problemet stadig uløst.

Og hvad er fragmenteringsproblemet? Som jeg ser det, er det et problem, at man kan gå ned i en butik, og se på tyve forskellige androidtelefoner, der har hver deres skærmopløsning, CPU-hastighed og kører forskellige versioner af Android. Brugeroplevelsen for den almindelige bruger, som ikke lige har brugt en uge på at sætte sig ind i, hvilke androidversioner og telefonmodeller han/hun skal købe, bliver oplevet som meget svingende.

Min kritik går på, at det er denne oversvømmelse af androidmodeller, kombineret med fabrikanternes mangel på support på ældre modeller, der gør Android til en mildt sagt broget størrelse. Sådanne oplevelser får man ikke, hvis man køber en iPhone (der er kun én, og måske snart to modeller), eller en Windows Phone, hvor der er langt større kontrol med hardwarekrav end til Android.

  • 1
  • 1
Log ind eller Opret konto for at kommentere