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

Documenti analoghi
Confronto sperimentale tra tecniche di testing automatico per applicazioni Android

Strumenti per il testing di applicazioni in ambiente Android

Implementazione di un servizio VoIP in ambienti SOA per mobile computing

Sviluppo di processi per l automatizzazione del testing per applicazioni Android

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

Progetto e sviluppo di una Applicazione Android per l accesso a reti di sensori senza filo

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

Test in automatico di programmi Android

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

Gui testing automatico di applicazioni Android tramite emulazione di input ed eventi provenienti da sensori

Uno strumento per il deployment automatico di performance test su piattaforme per la distribuzione di dati

Realizzazione di un sistema di logging prototipale per la piattaforma

Sviluppo e manutenzione di un applicazione CAD tramite le WPF e l MV-VM

Realizzazione di un prototipo di un software web based per la gestione di un inventario comunale

Progetto e sviluppo di unʼapplicazione iphone per lʼaccesso a reti di sensori senza fili."

UN SUPPORTO AUTOMATICO PER LA RACCOLTA E L ANALISI DI DATI SPERIMENTALI DI UN MIDDLEWARE PER LA DISTRIBUZIONE DI DATI

Generazione Automatica di Asserzioni da Modelli di Specifica

Il sistema operativo TinyOS

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

Realizzazione di un framework di monitoring per l'analisi di sistemi critici Anno Accademico 2013/2014

Il Paradigma REST per lo sviluppo di applicazioni Web 2.0

Sistemi Mobili e Wireless Android Primi passi

Analisi e sperimentazione della piattaforma Web Service Notification nell ambito del controllo del traffico aereo

Sistemi Mobili e Wireless Android - Servizi

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

Analisi della dependability di un middleware per la

Tecniche di riuso del software: applicazione ad un caso di studio reale

Strumenti per la gestione della configurazione del software

Un sistema di identificazione basato su tecnologia RFID

Un applicazione per il trasferimento file in ambiente Symbian

Studio della sicurezza in OMA SUPL e di una sua implementazione in Java

Un sistema per l'emulazione delle reti su cluster di macchine virtuali Anno Accademico 2007/2008

SISTEMA DI TELECONTROLLO PER LA GESTIONE DELLA FLOTTA

Sviluppo di applicazioni mobili su piattaforma Maemo

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

Progettazione ed implementazione di un tool per lo sviluppo di applicazioni in Esperanto

Analisi e utilizzo di un framework per lo sviluppo di applicazioni web

Elementi di UML (7): Diagrammi dei componenti e di deployment

appunti delle lezioni Architetture client/server: applicazioni server

Progettazione e sviluppo di un applicazione di Mobile Payment su dispositivo Android tramite tecnologia NFC

Realizzazione di un sistema di gestione di strumentazione via web

Corso Base. Lezione 7. Maurizio Cozzetto, Francesco Sarasini

Università degli Studi Roma Tre

Strategie per il miglioramento dei log applicativi basate su Software Fault Injection

tesi di laurea Anno Accademico 2004/2005 relatore Ing. Massimo Ficco candidato Pasquale Incarnato Matr. 534/938

Analisi di prestazioni di applicazioni web in ambiente virtualizzato

Realizzazione di interazioni sincrone e asincrone tra applicazioni Web 2.0

tesi di laurea Anno Accademico relatore Ch.mo prof. Stefano Russo correlatore Ing. Generoso Paolillo candidato Marco Leoni Matr.

Sistemi operativi basati sul web

Un architettura per lo streaming multimediale in ambiente distribuito

Analisi e sviluppo di un componente per un ESB open source

Università degli Studi di Salerno

UNIVERSITÀ DEGLI STUDI DI SIENA

1. Introduzione. 2. Il Progetto

Prototipazione di un componente di elaborazione dei piani di volo in un sistema di Traffic Management

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A

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

INSEGNAMENTO ANNO ACCADEMICO CORSO DI LAUREA IN DOCENTE

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

Realizzazione di Web Service per l estrazione di informazioni da siti web enciclopedici

"Sviluppo di un client Android e di un server per la gestione di un. menù di un ristorante."

Automazione Industriale 4- Ingegneria del Software

FORYOU Passione per la comunicazione. Direct Marketing Concorsi via Sms

Un architettura per la gestione dei log di applicazioni distribuite

Tesi di laurea specialistica SPERIMENTAZIONI DI TECNICHE DI TESTING STATICO PER APPLICAZIONI ANDROID

Una metodologia per la definizione dei livelli di criticità dei componenti di un sistema software complesso

Sviluppo e integrazione di strumenti a supporto del reverse engineering di applicazioni flash

Un approccio innovativo per il delivery di servizi in infrastrutture di nomadic computing

Università degli Studi di Ferrara

Modelli e Sistemi di Elaborazione Peer-to-Peer

Android. Elenco dei package

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

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Progettazione e Sviluppo dell Applicazione Web Share Mobile per Dispositivi Mobili Multipiattaforma. Elaborato di Laurea di: Marco Stanzani

Un approccio innovativo alla tecnica di robustness testing del sistema operativo Linux

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

FLEET MONITORING SCHEMA DI FUNZIONAMENTO

Un Sistema Informativo per il Monitoraggio di Apparati Radar mediante l uso di Griglie Computazionali

Sistemi Mobili e Wireless Android Introduzione alla piattaforma

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

Un applicazione client per la localizzazione via Bluetooth e Wi-Fi di dispositivi Smartphone Anno Accademico 2005/2006

SMD: a sensor data distribution service for FIN-BOX middleware for the interoperability in systems of systems Anno Accademico 2011/2012

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

Metodologie e strumenti per il collaudo di applicazioni Web

Uno strumento per la valutazione automatica dell accessibilità delle

Metodi e Tecniche per il Riuso di componenti in Applicazioni Android

Il sistema che rende efficiente la manutenzione delle flotte di automezzi

Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework.

PTA Azione 6 PTA Azione 6 Sistema di precisione open source per il rilevamento flussi di mobilità

Si applica a: Windows Server 2008

Corso Corso di di programmazione di di sistemi mobile 1 1. Android Laboratorio. Primo Progetto, Toast

Programmazione Fondi Strutturali 2007/2013 P.O.N. FSE A.S. 2013/2014 SCHEDA PROGETTUALE MODULO. Obiettivo: C Azione: 1 Riferimento interno:

Progettazione e realizzazione di una GUI multi-piattaforma per applicazioni mediche in 2D

Configurazione, test e deployment di una

Silence Please! Gestore di profili audio per smartphone Android utilizzante geolocalizzazione GPS. Carmine Benedetto Luca Laudadio

Un Sistema per il Monitoraggio di Reti di Sensori da Terminali Mobili

Sviluppo di applicazioni MHP per la Televisione Digitale Terrestre

Una piattaforma per la negoziazione di servizi business to business attraverso la rete Internet

Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo

Transcript:

tesi di laurea Definizione di metodi e tecniche per il testing di applicazioni Android Sensor Based Anno Accademico 2010/2011 relatore Ch.mo prof. Porfirio Tramontana correlatore Ing. Domenico Amalfitano candidato Teresa Papa Matr. 534/3348

Adattabilità di metodi e tecniche di testing su applicazioni Android sensor based Ricerca di soluzioni che consentano di testare applicazioni Android basate sugli eventi, tramite simulazione da programma degli eventi stessi

Componenti dell applicazione che consentono di eseguire operazioni in background e non forniscono un interfaccia utente UNBOUNDED Services BOUNDED UnBounded: Servizio che può auto-interrompersi oppure essere fermato da un client per poi essere distrutto Bounded: Servizio distrutto solo quando tutti i suoi client lo rilasciano

Classi JUnit Services Instrumentation Test Case class Instrumentation myapp.apk TestRunner Instrumentation Test Runner Mock Object classes Tests Package myapptests.apk JUnit Test case classes Mock Object Instrumentation Process

TestClass: classe contenente i casi di test SmsMock: classe che estende l activity sotto test ed istanzia un nuovo oggetto di tipo SmsManager MockSender: Thread che riceve i dati dalla TestClass, li elabora ed istanzia l occorrenza di un Intent Message SmsActivity: activity sotto test BroadcastReceiver: componenete in ascolto dell arrivo di messaggi ActivityInstrumentationTestCase2 TestClass +mysman: SmsManager + setup() + testcase() MockSender + invia_messaggio() <<BroadcastReceiver>> BroadcastReceiver SmsMock <<Activity>> SmsActivity

Emulatore sul quale è eseguito il Progetto di Test Porta: 5554 Porta: 5556 Emulatore in attesa degli sms Invio Sms in Corso 1/3

Ormai i dispositivi mobili di ultima generazione sono dotati di diversi tipi di sensori La piattaforma Android attraverso un set di librerie permette una semplice gestione dei sensori da parte dello sviluppatore Accelerometro Classificazione Bussola Orientamento Prossimità Sensori Giroscopio Temperatura Luminosità Pressione

SensorService Testing In particolare la Piattaforma Android mette a disposizione una libreria android.hardware per la gestione dell apparato sensoristico Al contrario non vi sono metodi che permettono la simulazione di eventi sensore Infatti sono stati prima re-implementati i componenti base della libreria android.hardware e poi applicata la tecnica di testing

Utilizzo della tecnica su applicazione Sensor Based Progetto di Test AccelTesting + setup() + testcase() Progetto dell applicazione package activity AccelSender +set_cordinate() + notifymessage() SimulationActivity Handler Progetto dell applicazione package hardware SensorEvent SensorManager SensorEventListener Sensor

TEST CASE Prelievo da file.txt Dinamica del SensorService Testing HANDLER Incapsulamento dei valori SENSOR EVENT LISTENER Interfaccia in ascolto INTERFACCIA notifymessage() SensorEvent event = new SensorEvent(ctx, mvalues, 1); mlistener.msensorlistener.onsensorchanged(event); Set dei Valori nel Layout

Conclusioni Struttura implementata per predisporre al testing automatico applicazioni che fanno uso dei Servizi Android (ad es. GPS o SMS) Utilizzo della struttura per il SensorManager e l SmsManager (simile a quella del LocationService) Sviluppi Futuri Generazione di casi di test a partire dalla struttura implementata Uso della struttura implementata per applicazioni che fanno uso di altri servizi Android come: TelephonyService Valutazione della compatibilità della struttura proposta in applicazioni reali GRAZIE PER L ATTENZIONE