SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
MobileSoft ’17
Buenos Aires,Argentina
Monday, May 22nd, 2017
Kevin Moran,
Richard Bonett,
Carlos Bernal-Cárdenas,
Brendan Otten,
Daniel Park,
& Denys Poshyvanyk
ON-DEVICE BUG REPORTING FOR
ANDROID APPLICATIONS
BACKGROUND & MOTIVATION
• Effective bug reporting can be difficult for mobile apps.
• Insufficient information in bug reports is one of the leading
causes of non-reproducible reports.1
• Developers consider (i) steps to reproduce, (ii) stack traces,
and (iii) test cases/scenarios as the most helpful sources of
information in bug reports.2
1M. Erfani Joorabchi, M. Mirzaaghaei, and A. Mesbah. Works for me! characterizing non-reproducible bug reports. MSR 2014,
2Nicolas Bettenburg, Sascha Just, Adrian Schröter, Cathrin Weiss, Rahul Premraj, and Thomas Zimmermann. 2008. What makes a
good bug report? (SIGSOFT ’08/FSE-16)
RELATED WORK
• Two major types of SimilarTools:
RELATED WORK
• Two major types of SimilarTools:
• Commercially Available Bug Reporting Services

RELATED WORK
• Two major types of SimilarTools:
• Commercially Available Bug Reporting Services

RELATED WORK
• Two major types of SimilarTools:
• Commercially Available Bug Reporting Services

• Research/Commercial Tools for Record/Replay
RELATED WORK
• Two major types of SimilarTools:
• Commercially Available Bug Reporting Services

• Research/Commercial Tools for Record/Replay
RELATED WORK
• Bug Reporting Services do not collect precise user
input information.
• Existing Record & Replay tools typically require a
connection to a host machine.
• These limitations prohibit easy, accurate recording of
bug reports in contexts such as crowd-based
testing.
LIMITATIONS OF RELATED WORK
OUR SOLUTION: ODBR
ODBR Android App Running on
Physical or Virtual Android Device
ODBR Application Overview
GetEvent
Manager
SensorEvent
Manager
ScreenShot
Manager
Service that reads
from dev/input/
Samples Sensor
Streams
Screenshot
Service
Bug Recording Phase
Bug Report
JSON
Document
CouchDB
Java Web-
Application
Parse
JSON
Bug
Document
Display
rich html
Bug
Report
Bug Report Displayed in Web InterfaceUI-Hierarchy
Manager
Collects UI Info
from uiautomator
OUR SOLUTION: ODBR
ODBR Android App Running on
Physical or Virtual Android Device
ODBR Application Overview
GetEvent
Manager
SensorEvent
Manager
ScreenShot
Manager
Service that reads
from dev/input/
Samples Sensor
Streams
Screenshot
Service
Bug Recording Phase
Bug Report
JSON
Document
CouchDB
Java Web-
Application
Parse
JSON
Bug
Document
Display
rich html
Bug
Report
Bug Report Displayed in Web InterfaceUI-Hierarchy
Manager
Collects UI Info
from uiautomator
Android Application
OUR SOLUTION: ODBR
ODBR Android App Running on
Physical or Virtual Android Device
ODBR Application Overview
GetEvent
Manager
SensorEvent
Manager
ScreenShot
Manager
Service that reads
from dev/input/
Samples Sensor
Streams
Screenshot
Service
Bug Recording Phase
Bug Report
JSON
Document
CouchDB
Java Web-
Application
Parse
JSON
Bug
Document
Display
rich html
Bug
Report
Bug Report Displayed in Web InterfaceUI-Hierarchy
Manager
Collects UI Info
from uiautomator
Android Application Java Web Application
ODBR: DEMO
ODBR: DEMO
4) Replay is
Completely
Automated!
2) User records inputs to
reproduce bug
3) User reviews bug
report to ensure actions
are accurate
1) User opens ODBR
and chooses app to
record
ODBR:WEB INTERFACE
ODBR:WEB INTERFACE
Any Questions?
Thank you!
https://www.android-dev-tools.com/odbr/
ODBR is open source under the MIT License! please visit:
Kevin Moran
Ph.D. candidate
kpmoran@cs.wm.edu
http://www.cs.wm.edu/~kpmoran

Mais conteúdo relacionado

Mais procurados

Top Best Practices for Successful Mobile Test Automation
Top Best Practices for Successful Mobile Test AutomationTop Best Practices for Successful Mobile Test Automation
Top Best Practices for Successful Mobile Test AutomationFred Beringer
 
100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your Testing100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your TestingBugRaptors
 
Mobile Test Automation
Mobile Test AutomationMobile Test Automation
Mobile Test AutomationLee Barnes
 
Android automation tools
Android automation toolsAndroid automation tools
Android automation toolsSSGMCE SHEGAON
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Riccardo Coppola
 
Techniques and Tools for Mobile Testing Automation
Techniques and Tools for Mobile Testing AutomationTechniques and Tools for Mobile Testing Automation
Techniques and Tools for Mobile Testing AutomationPorfirio Tramontana
 
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsMachine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsKevin Moran
 
Everything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumEverything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumLizzy Guido (she/her)
 
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...Lili Wei
 
SaaS Digital Assurance Lab
SaaS Digital Assurance LabSaaS Digital Assurance Lab
SaaS Digital Assurance LabExperitest
 
Selenium training
Selenium trainingSelenium training
Selenium trainingShivaraj R
 
Solving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous TestingSolving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous TestingPerfecto by Perforce
 
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...Lili Wei
 
Choosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for YouChoosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for YouPerfecto by Perforce
 
Best Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBest Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBitbar
 
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo EuteneuerStop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo EuteneuerJAXLondon_Conference
 
Mobile Test Automation
Mobile Test AutomationMobile Test Automation
Mobile Test AutomationAndreas Jakl
 
Adam carmi
Adam carmiAdam carmi
Adam carmiCodeFest
 

Mais procurados (20)

Top Best Practices for Successful Mobile Test Automation
Top Best Practices for Successful Mobile Test AutomationTop Best Practices for Successful Mobile Test Automation
Top Best Practices for Successful Mobile Test Automation
 
100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your Testing100 effective software testing tools that boost your Testing
100 effective software testing tools that boost your Testing
 
Mobile Test Automation
Mobile Test AutomationMobile Test Automation
Mobile Test Automation
 
Android automation tools
Android automation toolsAndroid automation tools
Android automation tools
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
 
expBSIT (1) (1)
expBSIT (1) (1)expBSIT (1) (1)
expBSIT (1) (1)
 
Techniques and Tools for Mobile Testing Automation
Techniques and Tools for Mobile Testing AutomationTechniques and Tools for Mobile Testing Automation
Techniques and Tools for Mobile Testing Automation
 
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsMachine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
 
Everything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumEverything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and Selenium
 
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...
ICSE 2019 - PIVOT: Learning API-Device Correlations to Facilitate Android Com...
 
SaaS Digital Assurance Lab
SaaS Digital Assurance LabSaaS Digital Assurance Lab
SaaS Digital Assurance Lab
 
Selenium training
Selenium trainingSelenium training
Selenium training
 
Solving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous TestingSolving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous Testing
 
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...
 
Choosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for YouChoosing the Best Open Source Test Automation Tool for You
Choosing the Best Open Source Test Automation Tool for You
 
Best Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBest Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App Testing
 
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo EuteneuerStop guessing, start testing – mobile testing done right - Timo Euteneuer
Stop guessing, start testing – mobile testing done right - Timo Euteneuer
 
Mobile Test Automation
Mobile Test AutomationMobile Test Automation
Mobile Test Automation
 
Test and docs: Hand in hand
Test and docs: Hand in handTest and docs: Hand in hand
Test and docs: Hand in hand
 
Adam carmi
Adam carmiAdam carmi
Adam carmi
 

Semelhante a On-Device Bug Reporting for Android Applications

Auto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android ApplicationsAuto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android ApplicationsKevin Moran
 
IEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACT
IEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACTIEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACT
IEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACTtsysglobalsolutions
 
Thorsignia - Custom software development services in india
Thorsignia - Custom software development services in indiaThorsignia - Custom software development services in india
Thorsignia - Custom software development services in indiacharan Teja
 
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest
 
IRJET - NETRA: Android Application for Visually Challenged People to Dete...
IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...
IRJET - NETRA: Android Application for Visually Challenged People to Dete...IRJET Journal
 
Forey: An Android Application for the Visually Impaired
Forey: An Android Application for the Visually ImpairedForey: An Android Application for the Visually Impaired
Forey: An Android Application for the Visually ImpairedIRJET Journal
 
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...Bitbar
 
IRJET- Android Malware Detection System
IRJET-  	  Android Malware Detection SystemIRJET-  	  Android Malware Detection System
IRJET- Android Malware Detection SystemIRJET Journal
 
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...NITHIN S.S
 
Mobile Apps Performance Testing Using Open Source Tool JMeter
Mobile Apps Performance Testing Using Open Source Tool JMeterMobile Apps Performance Testing Using Open Source Tool JMeter
Mobile Apps Performance Testing Using Open Source Tool JMeterDevendra Singh
 
Consigue una App 5 estrellas
Consigue una App 5 estrellasConsigue una App 5 estrellas
Consigue una App 5 estrellasGlobe Testing
 
IRJET-An Interline Dynamic Voltage Restorer (IDVR)
IRJET-An Interline Dynamic Voltage Restorer (IDVR)IRJET-An Interline Dynamic Voltage Restorer (IDVR)
IRJET-An Interline Dynamic Voltage Restorer (IDVR)IRJET Journal
 
Mobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele PecorariMobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele PecorariOlivier DASINI
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingNoor Orfahly
 
IRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine LearningIRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine LearningIRJET Journal
 
IRJET- A Quality Watch Android Based Application for Monitoring Robotic A...
IRJET-  	  A Quality Watch Android Based Application for Monitoring Robotic A...IRJET-  	  A Quality Watch Android Based Application for Monitoring Robotic A...
IRJET- A Quality Watch Android Based Application for Monitoring Robotic A...IRJET Journal
 
Exposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play AppsExposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play AppsSebastiano Panichella
 
Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...
Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...
Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...GoIT
 
Hazard object reporting to respective authorities
Hazard object reporting to respective authoritiesHazard object reporting to respective authorities
Hazard object reporting to respective authoritieseSAT Journals
 

Semelhante a On-Device Bug Reporting for Android Applications (20)

Auto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android ApplicationsAuto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android Applications
 
IEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACT
IEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACTIEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACT
IEEE ANDROID APPLICATION 2016 TITLE AND ABSTRACT
 
Major project srs
Major project srsMajor project srs
Major project srs
 
Thorsignia - Custom software development services in india
Thorsignia - Custom software development services in indiaThorsignia - Custom software development services in india
Thorsignia - Custom software development services in india
 
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
 
IRJET - NETRA: Android Application for Visually Challenged People to Dete...
IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...
IRJET - NETRA: Android Application for Visually Challenged People to Dete...
 
Forey: An Android Application for the Visually Impaired
Forey: An Android Application for the Visually ImpairedForey: An Android Application for the Visually Impaired
Forey: An Android Application for the Visually Impaired
 
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
The Best of Both Worlds - Combining Performance and Functional Mobile App Tes...
 
IRJET- Android Malware Detection System
IRJET-  	  Android Malware Detection SystemIRJET-  	  Android Malware Detection System
IRJET- Android Malware Detection System
 
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
 
Mobile Apps Performance Testing Using Open Source Tool JMeter
Mobile Apps Performance Testing Using Open Source Tool JMeterMobile Apps Performance Testing Using Open Source Tool JMeter
Mobile Apps Performance Testing Using Open Source Tool JMeter
 
Consigue una App 5 estrellas
Consigue una App 5 estrellasConsigue una App 5 estrellas
Consigue una App 5 estrellas
 
IRJET-An Interline Dynamic Voltage Restorer (IDVR)
IRJET-An Interline Dynamic Voltage Restorer (IDVR)IRJET-An Interline Dynamic Voltage Restorer (IDVR)
IRJET-An Interline Dynamic Voltage Restorer (IDVR)
 
Mobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele PecorariMobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele Pecorari
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
IRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine LearningIRJET- Data Reduction in Bug Triage using Supervised Machine Learning
IRJET- Data Reduction in Bug Triage using Supervised Machine Learning
 
IRJET- A Quality Watch Android Based Application for Monitoring Robotic A...
IRJET-  	  A Quality Watch Android Based Application for Monitoring Robotic A...IRJET-  	  A Quality Watch Android Based Application for Monitoring Robotic A...
IRJET- A Quality Watch Android Based Application for Monitoring Robotic A...
 
Exposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play AppsExposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play Apps
 
Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...
Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...
Mobile Saturday. Тема 3. Особенности тестирования приложения на Android: Huma...
 
Hazard object reporting to respective authorities
Hazard object reporting to respective authoritiesHazard object reporting to respective authorities
Hazard object reporting to respective authorities
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

On-Device Bug Reporting for Android Applications

  • 1. MobileSoft ’17 Buenos Aires,Argentina Monday, May 22nd, 2017 Kevin Moran, Richard Bonett, Carlos Bernal-Cárdenas, Brendan Otten, Daniel Park, & Denys Poshyvanyk ON-DEVICE BUG REPORTING FOR ANDROID APPLICATIONS
  • 2. BACKGROUND & MOTIVATION • Effective bug reporting can be difficult for mobile apps. • Insufficient information in bug reports is one of the leading causes of non-reproducible reports.1 • Developers consider (i) steps to reproduce, (ii) stack traces, and (iii) test cases/scenarios as the most helpful sources of information in bug reports.2 1M. Erfani Joorabchi, M. Mirzaaghaei, and A. Mesbah. Works for me! characterizing non-reproducible bug reports. MSR 2014, 2Nicolas Bettenburg, Sascha Just, Adrian Schröter, Cathrin Weiss, Rahul Premraj, and Thomas Zimmermann. 2008. What makes a good bug report? (SIGSOFT ’08/FSE-16)
  • 4. • Two major types of SimilarTools: RELATED WORK
  • 5. • Two major types of SimilarTools: • Commercially Available Bug Reporting Services
 RELATED WORK
  • 6. • Two major types of SimilarTools: • Commercially Available Bug Reporting Services
 RELATED WORK
  • 7. • Two major types of SimilarTools: • Commercially Available Bug Reporting Services
 • Research/Commercial Tools for Record/Replay RELATED WORK
  • 8. • Two major types of SimilarTools: • Commercially Available Bug Reporting Services
 • Research/Commercial Tools for Record/Replay RELATED WORK
  • 9. • Bug Reporting Services do not collect precise user input information. • Existing Record & Replay tools typically require a connection to a host machine. • These limitations prohibit easy, accurate recording of bug reports in contexts such as crowd-based testing. LIMITATIONS OF RELATED WORK
  • 10. OUR SOLUTION: ODBR ODBR Android App Running on Physical or Virtual Android Device ODBR Application Overview GetEvent Manager SensorEvent Manager ScreenShot Manager Service that reads from dev/input/ Samples Sensor Streams Screenshot Service Bug Recording Phase Bug Report JSON Document CouchDB Java Web- Application Parse JSON Bug Document Display rich html Bug Report Bug Report Displayed in Web InterfaceUI-Hierarchy Manager Collects UI Info from uiautomator
  • 11. OUR SOLUTION: ODBR ODBR Android App Running on Physical or Virtual Android Device ODBR Application Overview GetEvent Manager SensorEvent Manager ScreenShot Manager Service that reads from dev/input/ Samples Sensor Streams Screenshot Service Bug Recording Phase Bug Report JSON Document CouchDB Java Web- Application Parse JSON Bug Document Display rich html Bug Report Bug Report Displayed in Web InterfaceUI-Hierarchy Manager Collects UI Info from uiautomator Android Application
  • 12. OUR SOLUTION: ODBR ODBR Android App Running on Physical or Virtual Android Device ODBR Application Overview GetEvent Manager SensorEvent Manager ScreenShot Manager Service that reads from dev/input/ Samples Sensor Streams Screenshot Service Bug Recording Phase Bug Report JSON Document CouchDB Java Web- Application Parse JSON Bug Document Display rich html Bug Report Bug Report Displayed in Web InterfaceUI-Hierarchy Manager Collects UI Info from uiautomator Android Application Java Web Application
  • 14. ODBR: DEMO 4) Replay is Completely Automated! 2) User records inputs to reproduce bug 3) User reviews bug report to ensure actions are accurate 1) User opens ODBR and chooses app to record
  • 17. Any Questions? Thank you! https://www.android-dev-tools.com/odbr/ ODBR is open source under the MIT License! please visit: Kevin Moran Ph.D. candidate kpmoran@cs.wm.edu http://www.cs.wm.edu/~kpmoran