SlideShare a Scribd company logo
1 of 30
Download to read offline
Fragility of Layout-based and Visual GUI test
scripts: an assessment study on a
Hybrid Mobile Application
Luca Ardito, Riccardo Coppola, Marco Torchiano
Politecnico di Torino, Dipartimento di Automatica e Informatica
Different categories of mobile applications
• Native
• Web-Based
• Hybrid
2
Different categories of mobile applications
• Native
• Web-Based
• Hybrid
2
Mobile GUI Testing Techniques
3
• Manual
• Automated
Mobile GUI Testing Techniques
•Coordinate-Based
•Layout-Based
•Visual / Image Recognition-based
3
• Manual
Automated
Mobile GUI Testing Techniques
•Coordinate-Based: 1st generation
•Layout-Based: 2nd generation
•Visual / Image Recognition-based: 3rd generation
3
• Manual
Mobile GUI Testing Techniques
•Coordinate-Based: 1st generation
•Layout-Based: 2nd generation
•Visual / Image Recognition-based: 3rd generation
3
• Manual
Eye Automate
48
Tests the actual appearance of the app
Tests layout and hierarchy details
Resilient to device diversity
Resilient to graphical changes
Resilient to changes in layout definition
Unaffected by components with same
appearance
Unaffected by missing layout properties
End-2-End Mobile Testing Techniques
GUI Testing Fragility
5
9
The very high variability of User Interfaces and its definition
can lead to GUI Testing Fragility.
A GUI automated test is said to be fragile when:
• It fails when the application evolves;
• The failure is not due to the modification of the
functionalities under test, but to changes in the interface
arrangement and definition.
GUI Testing Fragility
5
10
The very high variability of User Interfaces and its definition
can lead to GUI Testing Fragility.
GUI Testing Fragility
5
11
The very high variability of User Interfaces and its definition
can lead to GUI Testing Fragility.
GUI Testing Fragility
5
12
The very high variability of User Interfaces and its definition
can lead to GUI Testing Fragility.
Testing issues for hybrid apps
6
13
Limited specialized literature about hybrid app testing;
Limited diffusion of specialized frameworks;
Software fragmentation issue;
Layouts often generated automatically by development
frameworks.
Study Design – Goal
Analyze the E2E testing process to understand what technique:
• Layout-based
• Visual
Yields
• Better performance in found defects
• Better resilience to fragility
PoliTO App, hybrid app:
- developed with Apache Cordova;
- Available on Play Store, App Store, Microsoft Store;
- Features for both students and teachers;
- 26 releases (last 1.7.2);
- 40,000 users (80% on Android).
Study Design – Software Object
Study Design – Software Object
RQ1 – Defects: Were test suites written with 2nd and 3rd
generation tools able to spot defects in the AUT?
Study Design – Research Questions and Metrics
RQ2 – Maintenance: What is the amount of maintenance effort
needed by the Layout-based and visual test suites?
Study Design – Research Questions and Metrics
Study Design – Research Questions and Metrics
MMR (Modified Methods Ratio) = changed test methods in
transition between release i-1 and i;
TMV (Test Method Volatility) = Ratio of releases in which a
given test method is modified;
TSV (Test Suite Volatility) = Ratio of test methods modified at
least one time;
MRR (Modified Releases Ratio) = Ratio of releases with
changes in test methods.
RQ3 – Fragility causes: What kind of fragilities are encountered
during the evolution of a hybrid mobile app?
Study Design – Research Questions and Metrics
Study Design: Procedure
Creation of a test suite with both techniques on the first release
of the application.
Study Design: Procedure
1.1.0 1.1.2 1.2.0 … 1.7.2
Test suite executed on all releases:
On each release, metrics are computed to measure how many
maintenance interventions are needed to keep tests aligned with
the application.
Results: Spotted defects
Visualization defect since release
1.6.4: empty element in drop-
down menu.
Graphic defect not fixed by the
developers, and not spotted by the
Layout-based testing tool.
Results: Fragilities
Results: Fragilities
Results: Fragility Causes
Number of occurrences of each fragility reason
Examples of Pure Graphic Fragilities
Examples of Widget Arrangement Fragilities
Conclusions
50/60% methods of tests suites had to be modified at least
once during the evolution of the app;
Effort in maintaining test suites for hybrid apps is comparable to
that for maintaining test suites for native apps;
Developers of hybrid applications should always consider to
provide unique identifiers for the elements of the GUI to avoid
fragilities;
A combined usage of both techniques should be considered a
best practicers for mobile testers.
Next Steps
Implementation and validation of a combined translation-based tool for
Visual testing of (hybrid) mobile apps;
Automated repair of locators of Visual or Layout-based test suites.

More Related Content

What's hot

Joyce S Resume
Joyce S ResumeJoyce S Resume
Joyce S ResumeJoyce S
 
Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...
Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...
Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...Riccardo Coppola
 
Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingSourabh Kasliwal
 
Ankita sinhamobile testing_3 years
Ankita sinhamobile testing_3 yearsAnkita sinhamobile testing_3 years
Ankita sinhamobile testing_3 yearsankita sinha
 
How do Developers Test Android Applications?
How do Developers Test Android Applications?How do Developers Test Android Applications?
How do Developers Test Android Applications?Kevin Moran
 
On-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android ApplicationsOn-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android ApplicationsKevin Moran
 
SOFTWARE TESTING TRAINING IN CHANDIGARH
SOFTWARE TESTING TRAINING IN CHANDIGARHSOFTWARE TESTING TRAINING IN CHANDIGARH
SOFTWARE TESTING TRAINING IN CHANDIGARHWebliquids
 
Functional Testing Tutorial | Edureka
Functional Testing Tutorial | EdurekaFunctional Testing Tutorial | Edureka
Functional Testing Tutorial | EdurekaEdureka!
 
Step by-step mobile testing approaches and strategies
Step by-step mobile testing approaches and strategiesStep by-step mobile testing approaches and strategies
Step by-step mobile testing approaches and strategiesAlisha Henderson
 

What's hot (20)

Vmodel
VmodelVmodel
Vmodel
 
Vijay_Resume
Vijay_ResumeVijay_Resume
Vijay_Resume
 
Joyce S Resume
Joyce S ResumeJoyce S Resume
Joyce S Resume
 
Computer1
Computer1Computer1
Computer1
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Testing
TestingTesting
Testing
 
Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...
Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...
Automated Mobile UI Testing Fragility: An Exploratory Assessment Study on And...
 
Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application Testing
 
Maheen soft
Maheen softMaheen soft
Maheen soft
 
Akhilesh Kumar Tester
Akhilesh Kumar TesterAkhilesh Kumar Tester
Akhilesh Kumar Tester
 
Gunderao _CV
Gunderao _CVGunderao _CV
Gunderao _CV
 
Ankita sinhamobile testing_3 years
Ankita sinhamobile testing_3 yearsAnkita sinhamobile testing_3 years
Ankita sinhamobile testing_3 years
 
Abhinav_CV
Abhinav_CVAbhinav_CV
Abhinav_CV
 
How do Developers Test Android Applications?
How do Developers Test Android Applications?How do Developers Test Android Applications?
How do Developers Test Android Applications?
 
Open Issues On Sqam
Open Issues On SqamOpen Issues On Sqam
Open Issues On Sqam
 
On-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android ApplicationsOn-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android Applications
 
SOFTWARE TESTING TRAINING IN CHANDIGARH
SOFTWARE TESTING TRAINING IN CHANDIGARHSOFTWARE TESTING TRAINING IN CHANDIGARH
SOFTWARE TESTING TRAINING IN CHANDIGARH
 
Functional Testing Tutorial | Edureka
Functional Testing Tutorial | EdurekaFunctional Testing Tutorial | Edureka
Functional Testing Tutorial | Edureka
 
Step by-step mobile testing approaches and strategies
Step by-step mobile testing approaches and strategiesStep by-step mobile testing approaches and strategies
Step by-step mobile testing approaches and strategies
 
Resume
ResumeResume
Resume
 

Similar to Fragility of Layout-based and Visual GUI test scripts: an assessment study on a Hybrid Mobile Application

Espresso vs. EyeAutomate: comparing two generations of Android GUI testing tools
Espresso vs. EyeAutomate: comparing two generations of Android GUI testing toolsEspresso vs. EyeAutomate: comparing two generations of Android GUI testing tools
Espresso vs. EyeAutomate: comparing two generations of Android GUI testing toolsMarco Torchiano
 
Mobile application development process
Mobile application development processMobile application development process
Mobile application development processTalentSmart1
 
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
 
Language learning using augmented reality
Language learning using augmented realityLanguage learning using augmented reality
Language learning using augmented realityAmritanshu Sawarn
 
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...Kevin Moran
 
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
 
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...kalichargn70th171
 
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
 
Neha Arora_Resume
Neha Arora_ResumeNeha Arora_Resume
Neha Arora_ResumeNeha Arora
 
Vinit Ranjan_Test Engineer
Vinit Ranjan_Test EngineerVinit Ranjan_Test Engineer
Vinit Ranjan_Test EngineerVinit Ranjan
 
[2015/2016] Mobile thinking
[2015/2016] Mobile thinking[2015/2016] Mobile thinking
[2015/2016] Mobile thinkingIvano Malavolta
 
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
 
System analsis and design
System analsis and designSystem analsis and design
System analsis and designRizwan Kabir
 
Resume_Chintan Barot 3+ Years Exp in Testing.
Resume_Chintan Barot 3+ Years Exp in Testing.Resume_Chintan Barot 3+ Years Exp in Testing.
Resume_Chintan Barot 3+ Years Exp in Testing.Chintan Barot
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET Journal
 
What are the Characteristics of High-rated Apps
What are the Characteristics of High-rated AppsWhat are the Characteristics of High-rated Apps
What are the Characteristics of High-rated AppsSAIL_QU
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testingsanpalan
 

Similar to Fragility of Layout-based and Visual GUI test scripts: an assessment study on a Hybrid Mobile Application (20)

Espresso vs. EyeAutomate: comparing two generations of Android GUI testing tools
Espresso vs. EyeAutomate: comparing two generations of Android GUI testing toolsEspresso vs. EyeAutomate: comparing two generations of Android GUI testing tools
Espresso vs. EyeAutomate: comparing two generations of Android GUI testing tools
 
Mobile application development process
Mobile application development processMobile application development process
Mobile application development process
 
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
 
Language learning using augmented reality
Language learning using augmented realityLanguage learning using augmented reality
Language learning using augmented reality
 
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
 
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...
 
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
Automated Front End Testing_ Navigating Types and Tools for Optimal Web Devel...
 
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
 
Neha Arora_Resume
Neha Arora_ResumeNeha Arora_Resume
Neha Arora_Resume
 
Vinit Ranjan_Test Engineer
Vinit Ranjan_Test EngineerVinit Ranjan_Test Engineer
Vinit Ranjan_Test Engineer
 
Ijcatr04051014
Ijcatr04051014Ijcatr04051014
Ijcatr04051014
 
Personal_CV
Personal_CVPersonal_CV
Personal_CV
 
Raji_QA
Raji_QARaji_QA
Raji_QA
 
[2015/2016] Mobile thinking
[2015/2016] Mobile thinking[2015/2016] Mobile thinking
[2015/2016] Mobile thinking
 
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
 
System analsis and design
System analsis and designSystem analsis and design
System analsis and design
 
Resume_Chintan Barot 3+ Years Exp in Testing.
Resume_Chintan Barot 3+ Years Exp in Testing.Resume_Chintan Barot 3+ Years Exp in Testing.
Resume_Chintan Barot 3+ Years Exp in Testing.
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLC
 
What are the Characteristics of High-rated Apps
What are the Characteristics of High-rated AppsWhat are the Characteristics of High-rated Apps
What are the Characteristics of High-rated Apps
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testing
 

Recently uploaded

Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 

Recently uploaded (20)

Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 

Fragility of Layout-based and Visual GUI test scripts: an assessment study on a Hybrid Mobile Application

  • 1. Fragility of Layout-based and Visual GUI test scripts: an assessment study on a Hybrid Mobile Application Luca Ardito, Riccardo Coppola, Marco Torchiano Politecnico di Torino, Dipartimento di Automatica e Informatica
  • 2. Different categories of mobile applications • Native • Web-Based • Hybrid 2
  • 3. Different categories of mobile applications • Native • Web-Based • Hybrid 2
  • 4. Mobile GUI Testing Techniques 3 • Manual • Automated
  • 5. Mobile GUI Testing Techniques •Coordinate-Based •Layout-Based •Visual / Image Recognition-based 3 • Manual Automated
  • 6. Mobile GUI Testing Techniques •Coordinate-Based: 1st generation •Layout-Based: 2nd generation •Visual / Image Recognition-based: 3rd generation 3 • Manual
  • 7. Mobile GUI Testing Techniques •Coordinate-Based: 1st generation •Layout-Based: 2nd generation •Visual / Image Recognition-based: 3rd generation 3 • Manual Eye Automate
  • 8. 48 Tests the actual appearance of the app Tests layout and hierarchy details Resilient to device diversity Resilient to graphical changes Resilient to changes in layout definition Unaffected by components with same appearance Unaffected by missing layout properties End-2-End Mobile Testing Techniques
  • 9. GUI Testing Fragility 5 9 The very high variability of User Interfaces and its definition can lead to GUI Testing Fragility. A GUI automated test is said to be fragile when: • It fails when the application evolves; • The failure is not due to the modification of the functionalities under test, but to changes in the interface arrangement and definition.
  • 10. GUI Testing Fragility 5 10 The very high variability of User Interfaces and its definition can lead to GUI Testing Fragility.
  • 11. GUI Testing Fragility 5 11 The very high variability of User Interfaces and its definition can lead to GUI Testing Fragility.
  • 12. GUI Testing Fragility 5 12 The very high variability of User Interfaces and its definition can lead to GUI Testing Fragility.
  • 13. Testing issues for hybrid apps 6 13 Limited specialized literature about hybrid app testing; Limited diffusion of specialized frameworks; Software fragmentation issue; Layouts often generated automatically by development frameworks.
  • 14. Study Design – Goal Analyze the E2E testing process to understand what technique: • Layout-based • Visual Yields • Better performance in found defects • Better resilience to fragility
  • 15. PoliTO App, hybrid app: - developed with Apache Cordova; - Available on Play Store, App Store, Microsoft Store; - Features for both students and teachers; - 26 releases (last 1.7.2); - 40,000 users (80% on Android). Study Design – Software Object
  • 16. Study Design – Software Object
  • 17. RQ1 – Defects: Were test suites written with 2nd and 3rd generation tools able to spot defects in the AUT? Study Design – Research Questions and Metrics
  • 18. RQ2 – Maintenance: What is the amount of maintenance effort needed by the Layout-based and visual test suites? Study Design – Research Questions and Metrics
  • 19. Study Design – Research Questions and Metrics MMR (Modified Methods Ratio) = changed test methods in transition between release i-1 and i; TMV (Test Method Volatility) = Ratio of releases in which a given test method is modified; TSV (Test Suite Volatility) = Ratio of test methods modified at least one time; MRR (Modified Releases Ratio) = Ratio of releases with changes in test methods.
  • 20. RQ3 – Fragility causes: What kind of fragilities are encountered during the evolution of a hybrid mobile app? Study Design – Research Questions and Metrics
  • 21. Study Design: Procedure Creation of a test suite with both techniques on the first release of the application.
  • 22. Study Design: Procedure 1.1.0 1.1.2 1.2.0 … 1.7.2 Test suite executed on all releases: On each release, metrics are computed to measure how many maintenance interventions are needed to keep tests aligned with the application.
  • 23. Results: Spotted defects Visualization defect since release 1.6.4: empty element in drop- down menu. Graphic defect not fixed by the developers, and not spotted by the Layout-based testing tool.
  • 26. Results: Fragility Causes Number of occurrences of each fragility reason
  • 27. Examples of Pure Graphic Fragilities
  • 28. Examples of Widget Arrangement Fragilities
  • 29. Conclusions 50/60% methods of tests suites had to be modified at least once during the evolution of the app; Effort in maintaining test suites for hybrid apps is comparable to that for maintaining test suites for native apps; Developers of hybrid applications should always consider to provide unique identifiers for the elements of the GUI to avoid fragilities; A combined usage of both techniques should be considered a best practicers for mobile testers.
  • 30. Next Steps Implementation and validation of a combined translation-based tool for Visual testing of (hybrid) mobile apps; Automated repair of locators of Visual or Layout-based test suites.