Strumenti per il testing di applicazioni in ambiente Android



Похожие документы
Sviluppo di processi per l automatizzazione del testing per applicazioni Android

Tesi di Laurea Automazione del testing delle Interfacce utente di applicazioni WEB:

Tecniche di progettazione e sviluppo di applicazioni mobile

Definizione di metodi e tecniche per il testing di applicazioni Android Sensor Based

Confronto sperimentale tra tecniche di testing automatico per applicazioni Android

Tesi Di Laurea. Anno Accademico 2010/2011. relatore Ch.mo prof. Cinque Marcello. correlatore Ch.mo Ing. Catello Cacace

tesi di laurea Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana candidato Pasquale Ludi Matr. 534\000438

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria

Implementazione di un servizio VoIP in ambienti SOA per mobile computing

Strumenti per la gestione della configurazione del software

Basi Android. Android si definisce open. Con8ene tecnologie open source. Il codice di Android è open. Licenza Open Source Apache 2.

Sistemi Mobili e Wireless Android Primi passi

Un architettura per la gestione dei log di applicazioni distribuite

Eclipse e Subversion

Tale attività non è descritta in questa dispensa

Test in automatico di programmi Android

Metodologie e tecnologie a supporto nello sviluppo di applicazioni mobile di tipo Enterprise!

Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato

IL SOFTWARE. Giada Agostinacchio Classe 2^ Beat ISIS G.Meroni Lissone Anno Scolastico 2007/2008

Realizzazione di un Tool per l iniezione automatica di difetti all interno di codice Javascript

FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA DIPARTIMENTO DI INFORMATICA E SISTEMISTICA. Presentazione

UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II

Realizzazione di un applicazione per la stesura di un Business Plan

Progetto ed implementazione di un tool di supporto allo sviluppo di applicazioni per Linux LibeRTOS

Android. Anatomia di una applicazione

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

MODULO INTRODUCTORY IN PROJECT MANAGEMENT POLITECNICO DI MILANO EDIZIONE

Analisi e sviluppo di un componente per un ESB open source

Strumento per l iniezione di guasti software nel sistema operativo GNU/Linux

Valutazione sperimentale di middleware pub/sub per reti wireless!

Eclipse - Nozioni Base

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

1- Corso di IT Strategy

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni server

L ambiente di sviluppo Android Studio

Note per generazione file.txt per invio trimestrale V.P. all AGENZIA DELLE ENTRATE

Progetto e sviluppo di un applicazione per il pilotaggio remoto di reti

Sviluppo di applicazioni MHP per la Televisione Digitale Terrestre

Test di unità con JUnit4

Prefazione Patente ECDL Patente Europea per la Guida del Computer AICA sette moduli Windows nella versione 7 Internet Explorer nella versione 8

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Corso di Laurea in Matematica. Seminario C/C++ Lorenzo Dusty Costa. Università degli Studi di Milano Dipartimento di Matematica

In legenda sono riportate le fasi R, P, C/T e I/SA come specificato nella norma ISO/IEC

SIEBEL CRM ON DEMAND MARKETING

U N I V E R S I T À D E G L I S T U D I D I S A L E R N O

Realizzazione di interazioni sincrone e asincrone tra applicazioni Web 2.0

DFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA

THS: un idea semplice, per un lavoro complesso.

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA

Ciclo di vita dimensionale

Il sistema operativo TinyOS

MANUALE. Gestione delle Non Conformità, dei reclami e dei suggerimenti

Corso Android New Edition Corso Online Programmatore Android New Edition

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Scheda operativa Versione rif c00. Libro Inventari

Corso Programmazione Android

Project Management. Modulo: Introduzione. prof. ing. Guido Guizzi

Pianificazione e progettazione

EDIZIONE Programma di riferimento del MiniMaster Introductory in Project Management 2015

Uno strumento per la valutazione automatica dell accessibilità delle

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida

con ANTLR tesi di laurea Anno Accademico Relatore Ch.mo prof. Porfirio Tramontana Candidato Fabio Canova Matr

ALLEGATO Esempio di questionario per la comprensione e valutazione del sistema IT

PSR CAMPANIA 2007/2013 FONDO FEASR MANUALE OPERATIVO DELLE ATTIVITA DI CONTROLLO DELL AUDIT

Collaudo e qualità del software Organizzazione, psicologia e competenza

Economia Aziendale. Il marketing

Università degli Studi di Napoli Federico II. FACOLTÀ DI INGEGNERIA Corso di Laurea in Ingegneria Informatica LM. Progetto di un applicazione Android

I Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio

Concetti di base di ingegneria del software

Configuration Management

PREMIO PER DONARE LA VITA REGOLAMENTO

Linee di indirizzo per la stesura del Piano aziendale della formazione e del Rapporto annuale della formazione (PAF e RAF)

Corso di PHP. Prerequisiti. 1 - Introduzione

Gestione dei servizi all utenza. 3. Autorizzazioni

Valutazione dei rischi Procedura standardizzata DI Relatore : Dott- Ing. R. Salvalaggio - RSPP

Sistemi Mobili e Wireless Android - Servizi

Lifephone. Introduzione. Database. Sito

Allegato 1 CIG FF PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO

Inizializzazione degli Host. BOOTP e DHCP

IL SISTEMA INFORMATIVO

Al termine del lavoro ad uno dei componenti del gruppo verrà affidato l incarico di relazionare a nome di tutto il gruppo.

FACOLTÀ SCIENZE DELLA FORMAZIONE

Programmazione in ambiente

Транскрипт:

tesi di laurea Strumenti per il testing di applicazioni in ambiente Android Anno Accademico 2010\2011 relatore Ch.mo prof. Marcello Cinque candidato Nome Domenico Paone Matr. 534\003571

Android Testing -Le applicazioni Android essendo costituite in maniera eterogenea da componenti interattivi e componenti che lavorano spesso in background necessitano di strumenti adeguati per poter essere controllate efficacemente nel loro funzionamento.

Obiettivi della Tesi -Descrivere i principali componenti del sistema Android focalizzando l attenzione su quali sono gli aspetti più importanti e interessanti da esaminare alla luce del testing -Enunciare e descrivere le classi utilizzate per il testing dei componenti Android -Mostrare come si può,grazie al testing framework di Android,, creare un progetto di test specifico per una applicazione, e come si possa realizzare una test case che esamini,con metodi opportuni, uno specifico componente della applicazione

Principali componenti del sistema Android 1) Attività: : Componente applicativo che fornisce una schermata che permette agli utenti di interagire con essa 2) Servizi: : Componente applicativo che viene eseguito solitamente in background per effettuare elaborazioni su dei dati o per servire dei processi remoti 3) Content Provider: : Componente che gestisce uno o più insiemi di dati per le applicazioni. 4) Broadcast Receiver: : Componente che risponde a livello di sistema agli annunci trasmessi in broadcast Un aspetto innovativo:gli Intent

Strumenti per il Testing -Le test suite realizzate in Android sono basate sull uso della libreria JUnit -Le estensioni JUnit di Android forniscono classi specifiche per testare determinati componenti Android,, permettendo: 1) Controllo del ciclo di vita di un componente 2) Isolamento dell ambiente di testing dal sistema operativo 3) Interazione con l interfaccia l del componente (ottimo per le Attività)

Un esempio di testing di attività :Spinner L attività è composta da un widget per la selezione di un pianeta tra un insieme di scelte possibili, con conseguente visualizazzione in fondo allo schermo mediante una TextView

Test Project dell Attività Un Test Project è organizzato come un Application Project Invece di componenti applicativi,un Test Project è composto da una o più test case, ciascuno dei quali costituisce una classe a sés stante Possibili classi base per il testing delle attività estendibili 1)ActivityInstrumentationTestCase2 2)ActivityUnitTestCase 3)SingleLaunchActivityTestCase

Setup del Test Project in Eclipse Parametri Settati Test Project -Test Project Name -Test Target -Build Target -Application Name -Package Name -Min SDK Version Parametri Settati Test Case Class -Name -Superclass:: Classe base da cui discende la classe creata

Metodi della Test Case -Costruttore -setup() : Preparazione ambiente per l l esecuzione dei test -testpreconditions(): Testing delle condizioni iniziali UI test -testspinnerui() Testing State Management -teststatedestroy() -teststatepause()

Conclusioni I test sviluppati,una volta eseguiti hanno tutti quanti successo (anche se questo non indica che l l applicazione non sia esente da errori!!) Per verificare il funzionamento corretto dei metodi di test si può p provare a modificare il codice dell attività per inserire dei difetti da riscontrare con i metodi sviluppati. Altri test possono essere scritti per testare i seguenti aspetti -Gestione degli Intent -RunTime Configuration Changes -Screen Size and Resolution

Grazie