Unit Testing & UI             Automation for            iPhone/iPad AppsMarco
Ferrari(GetConnected
Srl)marco.ferrari@getco...
Chi sono e cosa faccio• iPhone/iPad
developer
in
GetConnected
Srl
  (www.getconnected.it)  • Società
di
consulenza
e
svilu...
Mopapp.com  analisi delle   vendite edownload di app mobile iPhone,Android, WP7 e  BlackBerry;  analisi ads e    reviews
AgendaCome
possiamo
testare
e
rendere
più
stabili
le
proprie
app
iPhone?   •
Unit
TesEng   •
Creazione
di
un
target
test
i...
Unit TestTramite
Xcode
è
possibile
creare
dei
target
di
test.Apple
divide
gli
Unit
Test
in
due
categorie:     • Logic
Test...
Logic Test• UElizzaE
per
verificare
la
correezza
funzionale
del
codice.• Testano
piccole
par.
dell’applica.vo
con
granulari...
Application Test• Test
per
controllare
le
funzionalità
dell’applicaEvo
durante
   l’esecuzione.• UElizzaE
per
verificare
as...
UIAutomation• Permee
di
simulare
l’interazione
utente‐app.• Tramite
la
definizione
di
uno
script
javascript,
si
eseguono
  ...
Rappresenta
un
contenitore
                                UIAutomationdell’intero
ambiente:
App‐iOs‐DeviceLivello
applica...
Domande?GetConnected
srl       Marco
FerrariTel:
051/5870535       marco.ferrari@getconnected.itwww.getconnected.itinfo@ge...
Upcoming SlideShare
Loading in …5
×

Presentazione whymca marco_ferrari

420 views

Published on

Presentazione esposta il 20 Maggio 2011 alla sessione del WHYMCA di Milano.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
420
On SlideShare
0
From Embeds
0
Number of Embeds
79
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Presentazione whymca marco_ferrari

    1. 1. Unit Testing & UI Automation for iPhone/iPad AppsMarco
Ferrari(GetConnected
Srl)marco.ferrari@getconnected.it
    2. 2. Chi sono e cosa faccio• iPhone/iPad
developer
in
GetConnected
Srl
 (www.getconnected.it) • Società
di
consulenza
e
sviluppo
soAware
in
ambito
web
e
mobile• ProgeC
a
cui
ho
lavorato: • PosEno
(www.posEnoapp.com):
50K+
download
nel
mondo • LocomoEmes:
45K+
download
in
Italia
 • Varie
app
iPhone
e
iPad
per
aziende
nel
campo
finanziario,
della
moda
e
di
e‐ commerce• Mopapp.com:
business
analyEcs
per
app
mobile
    3. 3. Mopapp.com analisi delle vendite edownload di app mobile iPhone,Android, WP7 e BlackBerry; analisi ads e reviews
    4. 4. AgendaCome
possiamo
testare
e
rendere
più
stabili
le
proprie
app
iPhone? •
Unit
TesEng •
Creazione
di
un
target
test
in
Xcode •
UIAutomaEon •
AutomaEon
tesEng
con
Instruments
    5. 5. Unit TestTramite
Xcode
è
possibile
creare
dei
target
di
test.Apple
divide
gli
Unit
Test
in
due
categorie: • Logic
Test • Applica9on
TestOfficial
reference:hp://developer.apple.com/library/ios/#documentaEon/Xcode/Conceptual/iphone_development/135‐Unit_TesEng_ApplicaEons/unit_tesEng_applicaEons.html
    6. 6. Logic Test• UElizzaE
per
verificare
la
correezza
funzionale
del
codice.• Testano
piccole
par.
dell’applica.vo
con
granularità
molto
 fine.• Usa.
per
testare
la
logica
di
specifiche
funzioni
(es.
Check
 corre?ezza
di
campi
‐
Parsing
di
files
‐
Stress
test).• Le
funzioni
scrie
per
questo
Epo
di
test
sono
“applica.on
 independent”,
quindi
vengono
eseguite
solo
durante
la
build.
    7. 7. Application Test• Test
per
controllare
le
funzionalità
dell’applicaEvo
durante
 l’esecuzione.• UElizzaE
per
verificare
aspeC
legaE
al
device
fisico
(es.
 uElizzo
di
sensori
come
GPS,
accelerometro,
inizializzazione
di
 parametri
all’avvio
dell’app).• Al
contrario
dei
logic
test,
quesE
sono
eseguibili
solamente
 sul
device.
    8. 8. UIAutomation• Permee
di
simulare
l’interazione
utente‐app.• Tramite
la
definizione
di
uno
script
javascript,
si
eseguono
 step‐by‐step
le
azioni
da
simulare.• UEle
per
replicare
azioni
ripeEEve
che
risultano
“noiose”
e
 costose
in
termini
di
tempo. • es:
eseguire
100
o
1000
volte
un’operazione
per
vedere
se
 ci
sono
memory
leak
o
crash• Si
integra
direamente
con
Intruments
di
Xcode.hp://developer.apple.com/library/ios/#documentaEon/DeveloperTools/Reference/UIAutomaEonRef/_index.html
    9. 9. Rappresenta
un
contenitore
 UIAutomationdell’intero
ambiente:
App‐iOs‐DeviceLivello
applicaEvo
per
accedere
ai
componenE
grafici
dell’app Window
dell’app
che
 voglio
testare
e
da
cui
 recupero
i
riferimenE
 ai
componenE
che
 sono
visualizzaE
    10. 10. Domande?GetConnected
srl Marco
FerrariTel:
051/5870535 marco.ferrari@getconnected.itwww.getconnected.itinfo@getconnected.it

    ×