Please use this identifier to cite or link to this item: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/16441
Title: Context-aware path-based android applications testing
Other Titles: Teste de aplicativos Android baseados em caminhos baseados em contexto
???metadata.dc.creator???: ALMEIDA, Diego Rodrigues de.
???metadata.dc.contributor.advisor1???: MACHADO, Patricia Duarte de Lima.
???metadata.dc.contributor.advisor2???: ANDRADE, Wilkerson de Lucena.
???metadata.dc.contributor.referee1???: MASSONI, Tiago Lima.
???metadata.dc.contributor.referee2???: FIGUEIREDO, Jorge Cesar Abrantes de.
???metadata.dc.contributor.referee3???: COELHO, Roberta De Souza.
???metadata.dc.contributor.referee4???: DIAS NETO, Arilo Claudio.
Keywords: Testing Automation;Android;Path-based applications;Context-aware application;Automação de teste;Aplicativos baseados em caminho;Aplicativo sensível ao contexto;Aplicación sensible al contexto;Aplicaciones basadas en rutas;Automatización de pruebas
Issue Date: 31-Jul-2020
Publisher: Universidade Federal de Campina Grande
Citation: ALMEIDA, D. R. de. Context-aware path-based android applications testing. 2020. 193 f. Tese (Doutorado em Ciência da Computação) Programa de Pós-graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraíba - Brasil, 2020.
???metadata.dc.description.resumo???: Smartphones geralmente possuem vários sensores, como bússola, GPS, acelerômetro, pedômetro, etc., permitindo que os aplicativos estejam cientes do ambiente em que estão executando. Aplicativos sensível ao contexto são aplicativos orientados a eventos que detectam e reagem às informações de contexto fornecidas pelos sensores para fornecer informações e/ou serviços ao usuário. Comparado aos aplicativos de desktop e da Web, os aplicativos sensíveis ao contexto apresentam desafios adicionais aos testes. Esses aplicativos devem processar a entrada dos usuários, bem como vários valores de entrada de contextos em constante mudança que podem levar à explosão de possíveis situações, algumas das quais são muito difíceis de executar. Aplicativos baseados em caminhos são uma classe muito utilizada de aplicações sensíveis ao contexto. Esses aplicativos monitoram continuamente e em tempo real o percurso que o usuário realiza enquanto utiliza a aplicação. O objetivo deste trabalho é apresentar uma abordagem que permita o teste black-box de aplicativos Android sensíveis ao contexto baseados em caminhos e, dessa forma, possibilite selecionar e executar um conjunto viável de cenários a serem testados. Nossa abordagem consiste em selecionar, por meio de pairwise testing, combinações de valores de sensores com eventos que ocorrem durante a execução do aplicativo em teste (AUT). Desenvolvemos uma ferramenta que permite ao testador executar variação de contexto, simulando valores de sensores em um ambiente emulado que possibilita testar cenários difíceis de executar manualmente. Atualmente, a ferramenta suporta dados de contexto GPS e status de conexão de Internet. Esse tipo de dados é usado por quase todos os aplicativos disponíveis atualmente. Para avaliar nossa abordagem, realizamos um estudo empírico com quatro aplicativos baseados em GPS reais amplamente baixados por usuários do Android. Nossos resultados mostram que nossa abordagem foi capaz de executar um conjunto otimizado de diferentes cenários e encontrar 13 defeitos nos quatro aplicativos, dos quais 6 são defeitos de contexto, com 2 deles detectados ao executar cenários de difícil execução manual. A combinação de pairwise testing com a execução de casos de teste em um ambiente emulado mostrou-se eficaz, pois nos permitiu encontrar defeitos de contexto em aplicativos amplamente usados com um conjunto otimizado de casos de teste.
Abstract: Smartphones usually have several sensors such as touch screen, compass, gyroscope, GPS, accelerometer, pedometer, and so on, allowing applications to be aware of the environment on which they are running. Context-aware applications are event-driven applications that sense and react to context information given by sensors to provide information and/or services to the user. Compared to desktop and web applications, context-aware applications present additional challenges to testing. These applications must process input from users as well as various input values from constantly changing contexts that can lead to the explosion of possible situations, some of which are very difficult to execute. A widely used class of context-sensitive applications are path-based applications. These applications continuously and in real-time monitor the path that the user takes while using the application. This work aims to present an approach that makes it possible the black-box testing of context-aware path-based Android applications and, in this way, makes it possible to select and execute an viable set of scenarios to be tested. Our approach consists of selecting, through pairwise testing, combinations of sensor values with events that occur during the execution of the application under test (AUT). We developed a tool that allows the tester to execute context variation by simulating sensor values in an emulated environment that makes it possible to test scenarios that would be difficult to execute manually. The tool currently supports GPS context data and internet status connection. These kind of data is used by almost all available applications nowadays. To evaluate our approach, we performed an empirical study with four real GPS based applications widely downloaded by Android users. Our results show that our approach was able to execute an viable set of different scenarios and to find 13 defects in the four applications, of which 6 are context defects, with 2 of them detected when executing challenging scenarios for manual execution. Combining pairwise testing with the execution of test cases in an emulated environment proved to be effective. It allowed us to find context defects in applications widely used with an viable set of test cases.
Keywords: Testing Automation
Android
Path-based applications
Context-aware application
Automação de teste
Aplicativos baseados em caminho
Aplicativo sensível ao contexto
Aplicación sensible al contexto
Aplicaciones basadas en rutas
Automatización de pruebas
???metadata.dc.subject.cnpq???: Metodologia e técnicas da computação
URI: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/16441
Appears in Collections:Mestrado em Ciência da Computação.

Files in This Item:
File Description SizeFormat 
DIEGO RODRIGUES DE ALMEIDA – TESE (PPGCC) 2020.pdf4.42 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.