SlideShare a Scribd company logo
(Proven) Strategy for Testing
Progressive Web Apps (PWAs)
© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Eran Kinsbruner
@ek121268, http://continuoustesting.blog
erank@perfecto.io
About Me
• Lead Technical Evangelist at Perfecto
• Blogger and Speaker
• http://mobiletestingblog.com
• https://www.infoworld.com/author/Eran-
Kinsbruner/
• 18+ Years in Development & Testing
• Author of The Digital Quality Handbook
Weekly Podcast - Testiumpod
Agenda
• DevOps Transformation & Trends
• PWA Definition & Architecture
• Motivation to Develop PWA
• Testing Strategy for PWA Apps
• Q & A
PAST vs. The FUTURE
6/29/2018 4© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Mobile Capabilities in Web Browser (Incomplete) – Ramping Up
CameraMic
Device AUTH
BT/BLE
Notification Network
Every Browser Has Unique Capabilities
5/30/18 6© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Chrome on Windows 10 - Desktop Edge 17 on Windows 10 - Desktop
Today’s Mobile Native Apps Reality
Android WebiOS
Progressive Web App - Definition
Progressive Web Apps (PWAs) are web applications that are regular
web pages or websites, but can appear to the user like traditional
applications or native mobile applications. The application type
attempts to combine features offered by most modern browsers with
the benefits of a mobile experience (Wikipedia)
6/29/2018 8© 2015, Perfecto Mobile Ltd. All Rights Reserved.
The Rise of PWAs – Challenging Native Mobile Apps
A Progressive Web App is
• Progressive - Works for every user
• Responsive - Fits any form factor
• Connectivity independent
• App-like - Feels like an app
• Safe - Served via HTTPS
• Search Friendly -allowing search engines to find it.
• Re-engageable -Support push notifications.
• Linkable - does not require complex installation
(store access)
6/29/2018 9© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Source :medium.com
PWA Stats
6/29/2018 10© 2015, Perfecto Mobile Ltd. All Rights Reserved.
PWA Stats: https://www.pwastats.com/
Adoption Trend
6/29/2018 11© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Benefits
6/29/2018 12© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Progressive Web App – The Offline Network Benefit
6/29/2018 13© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Source: VentureBeat
Instagram PWA
6/29/2018 14© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Instagram/Tinder PWA on iOS
6/29/2018 15© 2015, Perfecto Mobile Ltd. All Rights Reserved.
1. Login isn’t saved in between launches
2. Language change/Orientation change
disrupts layout 3rd Party Login
Progressive Web App - Architecture
6/29/2018 16© 2015, Perfecto Mobile Ltd. All Rights Reserved.
• A PWA App consists of few key components
• Manifest.Json - That's the file within the PWA that describes the app, provides metadata specific
to the app like icons, splash screens, and more
• Service Workers – A service worker is a script that your browser runs in the background, separate
from a web page, opening the door to features that don't need a web page or user interaction.
Today, service workers already include features like push notifications and background sync
Service worker push notification
Installation Process
6/29/2018 17© 2015, Perfecto Mobile Ltd. All Rights Reserved.
*iOS Hybrid App (not running from Safari + special permissions) vs. Android APK)
PWA on iOS is Different than Android
6/29/2018 18© 2015, Perfecto Mobile Ltd. All Rights Reserved.
iOS Android
App type shortcut apk
Offline data Deleted after idle time No limit
Offline storage (browser based) Safari < 50Mb Chrome 6% available storage
Sensors support Limited (BT) All
access to private information No Yes
Payment system No supported Supported
Voice support No Yes
PWA Test Strategy
© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Responsive Web App – Test Plan Strategy: 6 Steps
6/29/2018 20© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Choose The Right
Platforms
Assure Visual Web
Pages Across
Platforms
Functionality of
Navigation Flows
and Menus
Client Side
Performance
Testing
Test Accessibility
for Mobile and
Web
Test Environment
Conditions
(Networks,
Sensors)
Progressive Web App – Test Plan Strategy: 6 Steps
6/29/2018 21© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Validate PWA
Manifest
Validate PWA
Service Workers
Validate PWA
Specific
Capabilities
Properly Test
Across Platforms
(RWD)
Test Automation
and Object
Identification
Strategy
Google’s PWA
Checklist
Compliance
RWD Testing Strategy And 
Progressive Web App – Test Plan Strategy: Step 1
icons, splash screen, start URL, background colors, display type, initial orientation and
theme colors, are correctly working and visually properly displayed across browsers
6/29/2018 22© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Progressive Web App – Test Plan Strategy: Step 2
6/29/2018 23© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Validate PWA
Service
Workers
Progressive Web App – Test Plan Strategy: Step 2
• Test the SW registration
• Test SW install and update functionality
• Test the various SWs Start/Stop/Registration
• chrome://serviceworker-internals/
• chrome://inspect/#service-workers
6/29/2018 24© 2015, Perfecto Mobile Ltd. All Rights Reserved.
if ('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/sw.js').then(function(registration) {
// Registration was successful
console.log('ServiceWorker registration successful with scope: ', registration.scope);
}, function(err) {
// registration failed :(
console.log('ServiceWorker registration failed: ', err);
});
});
}
var CACHE_NAME = 'my-site-cache-v1';
var urlsToCache = [
'/',
'/styles/main.css',
'/script/main.js'
];
self.addEventListener('install', function(event) {
// Perform install steps
event.waitUntil(
caches.open(CACHE_NAME)
.then(function(cache) {
console.log('Opened cache');
return cache.addAll(urlsToCache);
})
);
});
Validate PWA
Service
Workers
Progressive Web App – Test Plan Strategy: Step 3
• Sensors, Camera, Location capabilities, Push Notification, must be tested across mobile and web respectively
• PWA vs. Native: Instances, icons, functionality, Gestures
6/29/2018
Google Maps Force Touch (Native App) Google Maps Native vs. PWA ICONS Google Maps PWA Location Prompt
Validate PWA
Specific
Capabilities
Progressive Web App – Test Plan Strategy: Step 4
6/29/2018 26© 2015, Perfecto Mobile Ltd. All Rights Reserved.
• UI and visual/layout testing across multiple form factors
• Performance and rendering of the content across platforms
• Network related testing – in addition to the offline mode that is covered through service workers,
make sure to cover the app behavior throughout various network conditions (packet loss, flight
mode, latency %, 3G, 4G, 5G etc.)
• Functionality of the entire page user flows across platforms and screen sizes and resolutions
• The differences between browsers, platforms must be covered as well (Chrome, Safari, Android,
Samsung Browser vs. built-in browsers like Facebook - number of instances or copies a PWA app
can have on a device.
Properly Test
Across Platforms
(RWD)
Progressive Web App – Test Plan Strategy: Step 5
6/29/2018 27© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Object
Identification
Strategy
Interact with WebView Elements within the PWA App
Launch PWA App
Close Driver
Interact with Native Elements of the PWA App
Progressive Web App – Test Plan Strategy: Step 5
6/29/2018 28© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Object
Identification
Strategy
Progressive Web App – Test Plan Strategy: Step 5
6/29/2018 29© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Object
Identification
Strategy
Progressive Web App – Test Plan Strategy: Step 5
6/29/2018 30© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Object
Identification
Strategy
&
Progressive Web App – Test Plan Strategy: Step 6
6/29/2018 31© 2015, Perfecto Mobile Ltd. All Rights Reserved.
• https://developers.google.com/web/progressive-web-apps/checklist
Google’s PWA Checklist
Compliance
Summary
• PWA is growing and embraced by browser vendors as well as
enterprises
• iOS is lagging behind Android capabilities
• Selenium & Visual Testing & Appium is a recommended test
automation strategy for PWA
• Leverage what you already know and have (RWD, Selenium,
Mobile Testing)
6/29/2018 32© 2015, Perfecto Mobile Ltd. All Rights Reserved.
Thank You
Eran Kinsbruner
@ek121268
erank@perfecto.io
http://continuoustesting.blog
© 2015, Perfecto Mobile Ltd. All Rights Reserved.

More Related Content

What's hot

Social Media Application Testing
Social Media Application Testing Social Media Application Testing
Social Media Application Testing
Indium Software
 
SAP mobile platform & mobile apps
SAP mobile platform & mobile appsSAP mobile platform & mobile apps
SAP mobile platform & mobile apps
Capgemini
 
Optimimo
OptimimoOptimimo
Optimimo
PromptCloud
 
Using Drupal to Build the VA App Store
Using Drupal to Build the VA App StoreUsing Drupal to Build the VA App Store
Using Drupal to Build the VA App Store
Donna Rodriguez
 
Xamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP Slides
Xamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP SlidesXamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP Slides
Xamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP Slides
Xamarin
 
PWA demystified
PWA demystifiedPWA demystified
PWA demystified
Pradeep Patel, PMP®
 
SAP Mobile Platform - Product and Roadmap
SAP Mobile Platform - Product and RoadmapSAP Mobile Platform - Product and Roadmap
SAP Mobile Platform - Product and Roadmap
SAP PartnerEdge program for Application Development
 

What's hot (7)

Social Media Application Testing
Social Media Application Testing Social Media Application Testing
Social Media Application Testing
 
SAP mobile platform & mobile apps
SAP mobile platform & mobile appsSAP mobile platform & mobile apps
SAP mobile platform & mobile apps
 
Optimimo
OptimimoOptimimo
Optimimo
 
Using Drupal to Build the VA App Store
Using Drupal to Build the VA App StoreUsing Drupal to Build the VA App Store
Using Drupal to Build the VA App Store
 
Xamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP Slides
Xamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP SlidesXamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP Slides
Xamarin and SAP Mobile Platform for Mobile Enterprise Success - SAP Slides
 
PWA demystified
PWA demystifiedPWA demystified
PWA demystified
 
SAP Mobile Platform - Product and Roadmap
SAP Mobile Platform - Product and RoadmapSAP Mobile Platform - Product and Roadmap
SAP Mobile Platform - Product and Roadmap
 

Similar to Selenium conf india pwa 2018

Testing Strategy for Progressive Web Apps
Testing Strategy for Progressive Web AppsTesting Strategy for Progressive Web Apps
Testing Strategy for Progressive Web Apps
Perfecto by Perforce
 
Proven strategy for testing pw as aus-agile_testers
Proven strategy for testing pw as aus-agile_testersProven strategy for testing pw as aus-agile_testers
Proven strategy for testing pw as aus-agile_testers
Perfecto Mobile
 
Mapping mobileandweblandscape motb
Mapping mobileandweblandscape motbMapping mobileandweblandscape motb
Mapping mobileandweblandscape motb
Perfecto Mobile
 
Automating things you didn't know you could automate
Automating things you didn't know you could automateAutomating things you didn't know you could automate
Automating things you didn't know you could automate
Lizzy Guido (she/her)
 
Cross browser testing
Cross browser testingCross browser testing
Cross browser testing
Perfecto Mobile
 
Advanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebAdvanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive Web
Perfecto by Perforce
 
Automate More with Selenium for your RWD
Automate More with Selenium for your RWDAutomate More with Selenium for your RWD
Automate More with Selenium for your RWD
Perfecto by Perforce
 
Responsive Web Design: Testing to Deliver a Consistent User Experience
Responsive Web Design: Testing to Deliver a Consistent User ExperienceResponsive Web Design: Testing to Deliver a Consistent User Experience
Responsive Web Design: Testing to Deliver a Consistent User Experience
Perfecto by Perforce
 
End the Guesswork: How to Test the Right Devices, Platforms & User Conditions
End the Guesswork: How to Test the Right Devices, Platforms & User ConditionsEnd the Guesswork: How to Test the Right Devices, Platforms & User Conditions
End the Guesswork: How to Test the Right Devices, Platforms & User Conditions
Perfecto by Perforce
 
Webinar: Appium & Perfecto: A Perfect Match
Webinar: Appium & Perfecto: A Perfect MatchWebinar: Appium & Perfecto: A Perfect Match
Webinar: Appium & Perfecto: A Perfect Match
Lizzy Guido (she/her)
 
Quest2018 erank optimize test automation
Quest2018 erank optimize test automationQuest2018 erank optimize test automation
Quest2018 erank optimize test automation
Perfecto Mobile
 
Resume imran ansari ansari
Resume imran ansari ansariResume imran ansari ansari
Resume imran ansari ansari
Md Imran Ansari
 
Raleigh User Forum Presentation
Raleigh User Forum PresentationRaleigh User Forum Presentation
Raleigh User Forum Presentation
Perfecto Mobile
 
A Guided Approach to Testing - A Mobile First Strategy for your Enterprise!
A Guided Approach to Testing - A Mobile First Strategy for your Enterprise! A Guided Approach to Testing - A Mobile First Strategy for your Enterprise!
A Guided Approach to Testing - A Mobile First Strategy for your Enterprise!
Infostretch
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of things
IRJET Journal
 
Automation challenges - 121 Test Automation Event boston
Automation challenges - 121 Test Automation Event bostonAutomation challenges - 121 Test Automation Event boston
Automation challenges - 121 Test Automation Event boston
Perfecto Mobile
 
[Vietnam Mobile Day 2013] - Mobilization process for enterprise
[Vietnam Mobile Day 2013] - Mobilization process for enterprise[Vietnam Mobile Day 2013] - Mobilization process for enterprise
[Vietnam Mobile Day 2013] - Mobilization process for enterprise
AiTi Education
 
How to Test on the Right Mobile Platforms
How to Test on the Right Mobile PlatformsHow to Test on the Right Mobile Platforms
How to Test on the Right Mobile Platforms
Perfecto by Perforce
 
Agile Network India | New to Automation? Learn what, how & when | TRIPTI MITTAL
Agile Network India | New to Automation? Learn what, how & when | TRIPTI MITTALAgile Network India | New to Automation? Learn what, how & when | TRIPTI MITTAL
Agile Network India | New to Automation? Learn what, how & when | TRIPTI MITTAL
AgileNetwork
 

Similar to Selenium conf india pwa 2018 (20)

Testing Strategy for Progressive Web Apps
Testing Strategy for Progressive Web AppsTesting Strategy for Progressive Web Apps
Testing Strategy for Progressive Web Apps
 
Proven strategy for testing pw as aus-agile_testers
Proven strategy for testing pw as aus-agile_testersProven strategy for testing pw as aus-agile_testers
Proven strategy for testing pw as aus-agile_testers
 
Mapping mobileandweblandscape motb
Mapping mobileandweblandscape motbMapping mobileandweblandscape motb
Mapping mobileandweblandscape motb
 
Automating things you didn't know you could automate
Automating things you didn't know you could automateAutomating things you didn't know you could automate
Automating things you didn't know you could automate
 
Cross browser testing
Cross browser testingCross browser testing
Cross browser testing
 
Advanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebAdvanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive Web
 
Automate More with Selenium for your RWD
Automate More with Selenium for your RWDAutomate More with Selenium for your RWD
Automate More with Selenium for your RWD
 
Responsive Web Design: Testing to Deliver a Consistent User Experience
Responsive Web Design: Testing to Deliver a Consistent User ExperienceResponsive Web Design: Testing to Deliver a Consistent User Experience
Responsive Web Design: Testing to Deliver a Consistent User Experience
 
End the Guesswork: How to Test the Right Devices, Platforms & User Conditions
End the Guesswork: How to Test the Right Devices, Platforms & User ConditionsEnd the Guesswork: How to Test the Right Devices, Platforms & User Conditions
End the Guesswork: How to Test the Right Devices, Platforms & User Conditions
 
Webinar: Appium & Perfecto: A Perfect Match
Webinar: Appium & Perfecto: A Perfect MatchWebinar: Appium & Perfecto: A Perfect Match
Webinar: Appium & Perfecto: A Perfect Match
 
Quest2018 erank optimize test automation
Quest2018 erank optimize test automationQuest2018 erank optimize test automation
Quest2018 erank optimize test automation
 
Resume imran ansari ansari
Resume imran ansari ansariResume imran ansari ansari
Resume imran ansari ansari
 
Raleigh User Forum Presentation
Raleigh User Forum PresentationRaleigh User Forum Presentation
Raleigh User Forum Presentation
 
A Guided Approach to Testing - A Mobile First Strategy for your Enterprise!
A Guided Approach to Testing - A Mobile First Strategy for your Enterprise! A Guided Approach to Testing - A Mobile First Strategy for your Enterprise!
A Guided Approach to Testing - A Mobile First Strategy for your Enterprise!
 
Anil_kumar_Resume
Anil_kumar_ResumeAnil_kumar_Resume
Anil_kumar_Resume
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of things
 
Automation challenges - 121 Test Automation Event boston
Automation challenges - 121 Test Automation Event bostonAutomation challenges - 121 Test Automation Event boston
Automation challenges - 121 Test Automation Event boston
 
[Vietnam Mobile Day 2013] - Mobilization process for enterprise
[Vietnam Mobile Day 2013] - Mobilization process for enterprise[Vietnam Mobile Day 2013] - Mobilization process for enterprise
[Vietnam Mobile Day 2013] - Mobilization process for enterprise
 
How to Test on the Right Mobile Platforms
How to Test on the Right Mobile PlatformsHow to Test on the Right Mobile Platforms
How to Test on the Right Mobile Platforms
 
Agile Network India | New to Automation? Learn what, how & when | TRIPTI MITTAL
Agile Network India | New to Automation? Learn what, how & when | TRIPTI MITTALAgile Network India | New to Automation? Learn what, how & when | TRIPTI MITTAL
Agile Network India | New to Automation? Learn what, how & when | TRIPTI MITTAL
 

More from Perfecto Mobile

QA or the Highway 2022.pptx
QA or the Highway 2022.pptxQA or the Highway 2022.pptx
QA or the Highway 2022.pptx
Perfecto Mobile
 
Maturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous TestingMaturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous Testing
Perfecto Mobile
 
Shorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOpsShorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOps
Perfecto Mobile
 
Optimizing Test Coverage throughout the DevOps Pipeline
Optimizing Test Coverage throughout the DevOps PipelineOptimizing Test Coverage throughout the DevOps Pipeline
Optimizing Test Coverage throughout the DevOps Pipeline
Perfecto Mobile
 
Mastering BDD - Eran Kinsbruner Workshop Quest 2018
Mastering BDD - Eran Kinsbruner Workshop Quest 2018Mastering BDD - Eran Kinsbruner Workshop Quest 2018
Mastering BDD - Eran Kinsbruner Workshop Quest 2018
Perfecto Mobile
 
5 Stages of Digital Quality Maturity
5 Stages of Digital Quality Maturity5 Stages of Digital Quality Maturity
5 Stages of Digital Quality Maturity
Perfecto Mobile
 
Testing Next Generation Digital Interfaces
Testing Next Generation Digital InterfacesTesting Next Generation Digital Interfaces
Testing Next Generation Digital Interfaces
Perfecto Mobile
 
Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017
Perfecto Mobile
 
7 Keys for Unattended Test AUtomation webinar deck
7 Keys for Unattended Test AUtomation webinar deck7 Keys for Unattended Test AUtomation webinar deck
7 Keys for Unattended Test AUtomation webinar deck
Perfecto Mobile
 
iOS9 Launch - Mobile Dev & Test Implications
iOS9 Launch - Mobile Dev & Test ImplicationsiOS9 Launch - Mobile Dev & Test Implications
iOS9 Launch - Mobile Dev & Test Implications
Perfecto Mobile
 
Continuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps DeliveryContinuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps Delivery
Perfecto Mobile
 
Mobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetupMobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetup
Perfecto Mobile
 
Mobile test automation perfecto star east
Mobile test automation perfecto star eastMobile test automation perfecto star east
Mobile test automation perfecto star east
Perfecto Mobile
 
Wearables meetup
Wearables meetupWearables meetup
Wearables meetup
Perfecto Mobile
 
Juc oct 2014 final
Juc oct 2014 finalJuc oct 2014 final
Juc oct 2014 final
Perfecto Mobile
 
Meetup kickoff slides - Perfecto Mobile, September 2014
Meetup kickoff slides - Perfecto Mobile, September 2014Meetup kickoff slides - Perfecto Mobile, September 2014
Meetup kickoff slides - Perfecto Mobile, September 2014
Perfecto Mobile
 
Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...
Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...
Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...
Perfecto Mobile
 
Discover financial presentation
Discover financial presentationDiscover financial presentation
Discover financial presentationPerfecto Mobile
 
Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...Perfecto Mobile
 
Webinar mobile performance_best_practices
Webinar mobile performance_best_practicesWebinar mobile performance_best_practices
Webinar mobile performance_best_practicesPerfecto Mobile
 

More from Perfecto Mobile (20)

QA or the Highway 2022.pptx
QA or the Highway 2022.pptxQA or the Highway 2022.pptx
QA or the Highway 2022.pptx
 
Maturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous TestingMaturing your path toward DevOps with Continuous Testing
Maturing your path toward DevOps with Continuous Testing
 
Shorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOpsShorten Business Life Cycle Using DevOps
Shorten Business Life Cycle Using DevOps
 
Optimizing Test Coverage throughout the DevOps Pipeline
Optimizing Test Coverage throughout the DevOps PipelineOptimizing Test Coverage throughout the DevOps Pipeline
Optimizing Test Coverage throughout the DevOps Pipeline
 
Mastering BDD - Eran Kinsbruner Workshop Quest 2018
Mastering BDD - Eran Kinsbruner Workshop Quest 2018Mastering BDD - Eran Kinsbruner Workshop Quest 2018
Mastering BDD - Eran Kinsbruner Workshop Quest 2018
 
5 Stages of Digital Quality Maturity
5 Stages of Digital Quality Maturity5 Stages of Digital Quality Maturity
5 Stages of Digital Quality Maturity
 
Testing Next Generation Digital Interfaces
Testing Next Generation Digital InterfacesTesting Next Generation Digital Interfaces
Testing Next Generation Digital Interfaces
 
Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017Boston meetup blaze_meter_feb2017
Boston meetup blaze_meter_feb2017
 
7 Keys for Unattended Test AUtomation webinar deck
7 Keys for Unattended Test AUtomation webinar deck7 Keys for Unattended Test AUtomation webinar deck
7 Keys for Unattended Test AUtomation webinar deck
 
iOS9 Launch - Mobile Dev & Test Implications
iOS9 Launch - Mobile Dev & Test ImplicationsiOS9 Launch - Mobile Dev & Test Implications
iOS9 Launch - Mobile Dev & Test Implications
 
Continuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps DeliveryContinuous Quality For a 5 Star Mobile Apps Delivery
Continuous Quality For a 5 Star Mobile Apps Delivery
 
Mobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetupMobile Test Coverage- Israel 4th meetup
Mobile Test Coverage- Israel 4th meetup
 
Mobile test automation perfecto star east
Mobile test automation perfecto star eastMobile test automation perfecto star east
Mobile test automation perfecto star east
 
Wearables meetup
Wearables meetupWearables meetup
Wearables meetup
 
Juc oct 2014 final
Juc oct 2014 finalJuc oct 2014 final
Juc oct 2014 final
 
Meetup kickoff slides - Perfecto Mobile, September 2014
Meetup kickoff slides - Perfecto Mobile, September 2014Meetup kickoff slides - Perfecto Mobile, September 2014
Meetup kickoff slides - Perfecto Mobile, September 2014
 
Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...
Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...
Cross Platform Mobile Test Automation using Selenium WebDriver by Perfecto Mo...
 
Discover financial presentation
Discover financial presentationDiscover financial presentation
Discover financial presentation
 
Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...Webinar learn how to test any mobile app style from within eclipse using real...
Webinar learn how to test any mobile app style from within eclipse using real...
 
Webinar mobile performance_best_practices
Webinar mobile performance_best_practicesWebinar mobile performance_best_practices
Webinar mobile performance_best_practices
 

Recently uploaded

Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 

Recently uploaded (20)

Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 

Selenium conf india pwa 2018

  • 1. (Proven) Strategy for Testing Progressive Web Apps (PWAs) © 2015, Perfecto Mobile Ltd. All Rights Reserved. Eran Kinsbruner @ek121268, http://continuoustesting.blog erank@perfecto.io
  • 2. About Me • Lead Technical Evangelist at Perfecto • Blogger and Speaker • http://mobiletestingblog.com • https://www.infoworld.com/author/Eran- Kinsbruner/ • 18+ Years in Development & Testing • Author of The Digital Quality Handbook Weekly Podcast - Testiumpod
  • 3. Agenda • DevOps Transformation & Trends • PWA Definition & Architecture • Motivation to Develop PWA • Testing Strategy for PWA Apps • Q & A
  • 4. PAST vs. The FUTURE 6/29/2018 4© 2015, Perfecto Mobile Ltd. All Rights Reserved.
  • 5. Mobile Capabilities in Web Browser (Incomplete) – Ramping Up CameraMic Device AUTH BT/BLE Notification Network
  • 6. Every Browser Has Unique Capabilities 5/30/18 6© 2015, Perfecto Mobile Ltd. All Rights Reserved. Chrome on Windows 10 - Desktop Edge 17 on Windows 10 - Desktop
  • 7. Today’s Mobile Native Apps Reality Android WebiOS
  • 8. Progressive Web App - Definition Progressive Web Apps (PWAs) are web applications that are regular web pages or websites, but can appear to the user like traditional applications or native mobile applications. The application type attempts to combine features offered by most modern browsers with the benefits of a mobile experience (Wikipedia) 6/29/2018 8© 2015, Perfecto Mobile Ltd. All Rights Reserved.
  • 9. The Rise of PWAs – Challenging Native Mobile Apps A Progressive Web App is • Progressive - Works for every user • Responsive - Fits any form factor • Connectivity independent • App-like - Feels like an app • Safe - Served via HTTPS • Search Friendly -allowing search engines to find it. • Re-engageable -Support push notifications. • Linkable - does not require complex installation (store access) 6/29/2018 9© 2015, Perfecto Mobile Ltd. All Rights Reserved. Source :medium.com
  • 10. PWA Stats 6/29/2018 10© 2015, Perfecto Mobile Ltd. All Rights Reserved. PWA Stats: https://www.pwastats.com/
  • 11. Adoption Trend 6/29/2018 11© 2015, Perfecto Mobile Ltd. All Rights Reserved.
  • 12. Benefits 6/29/2018 12© 2015, Perfecto Mobile Ltd. All Rights Reserved.
  • 13. Progressive Web App – The Offline Network Benefit 6/29/2018 13© 2015, Perfecto Mobile Ltd. All Rights Reserved. Source: VentureBeat
  • 14. Instagram PWA 6/29/2018 14© 2015, Perfecto Mobile Ltd. All Rights Reserved.
  • 15. Instagram/Tinder PWA on iOS 6/29/2018 15© 2015, Perfecto Mobile Ltd. All Rights Reserved. 1. Login isn’t saved in between launches 2. Language change/Orientation change disrupts layout 3rd Party Login
  • 16. Progressive Web App - Architecture 6/29/2018 16© 2015, Perfecto Mobile Ltd. All Rights Reserved. • A PWA App consists of few key components • Manifest.Json - That's the file within the PWA that describes the app, provides metadata specific to the app like icons, splash screens, and more • Service Workers – A service worker is a script that your browser runs in the background, separate from a web page, opening the door to features that don't need a web page or user interaction. Today, service workers already include features like push notifications and background sync Service worker push notification
  • 17. Installation Process 6/29/2018 17© 2015, Perfecto Mobile Ltd. All Rights Reserved. *iOS Hybrid App (not running from Safari + special permissions) vs. Android APK)
  • 18. PWA on iOS is Different than Android 6/29/2018 18© 2015, Perfecto Mobile Ltd. All Rights Reserved. iOS Android App type shortcut apk Offline data Deleted after idle time No limit Offline storage (browser based) Safari < 50Mb Chrome 6% available storage Sensors support Limited (BT) All access to private information No Yes Payment system No supported Supported Voice support No Yes
  • 19. PWA Test Strategy © 2015, Perfecto Mobile Ltd. All Rights Reserved.
  • 20. Responsive Web App – Test Plan Strategy: 6 Steps 6/29/2018 20© 2015, Perfecto Mobile Ltd. All Rights Reserved. Choose The Right Platforms Assure Visual Web Pages Across Platforms Functionality of Navigation Flows and Menus Client Side Performance Testing Test Accessibility for Mobile and Web Test Environment Conditions (Networks, Sensors)
  • 21. Progressive Web App – Test Plan Strategy: 6 Steps 6/29/2018 21© 2015, Perfecto Mobile Ltd. All Rights Reserved. Validate PWA Manifest Validate PWA Service Workers Validate PWA Specific Capabilities Properly Test Across Platforms (RWD) Test Automation and Object Identification Strategy Google’s PWA Checklist Compliance RWD Testing Strategy And 
  • 22. Progressive Web App – Test Plan Strategy: Step 1 icons, splash screen, start URL, background colors, display type, initial orientation and theme colors, are correctly working and visually properly displayed across browsers 6/29/2018 22© 2015, Perfecto Mobile Ltd. All Rights Reserved.
  • 23. Progressive Web App – Test Plan Strategy: Step 2 6/29/2018 23© 2015, Perfecto Mobile Ltd. All Rights Reserved. Validate PWA Service Workers
  • 24. Progressive Web App – Test Plan Strategy: Step 2 • Test the SW registration • Test SW install and update functionality • Test the various SWs Start/Stop/Registration • chrome://serviceworker-internals/ • chrome://inspect/#service-workers 6/29/2018 24© 2015, Perfecto Mobile Ltd. All Rights Reserved. if ('serviceWorker' in navigator) { window.addEventListener('load', function() { navigator.serviceWorker.register('/sw.js').then(function(registration) { // Registration was successful console.log('ServiceWorker registration successful with scope: ', registration.scope); }, function(err) { // registration failed :( console.log('ServiceWorker registration failed: ', err); }); }); } var CACHE_NAME = 'my-site-cache-v1'; var urlsToCache = [ '/', '/styles/main.css', '/script/main.js' ]; self.addEventListener('install', function(event) { // Perform install steps event.waitUntil( caches.open(CACHE_NAME) .then(function(cache) { console.log('Opened cache'); return cache.addAll(urlsToCache); }) ); }); Validate PWA Service Workers
  • 25. Progressive Web App – Test Plan Strategy: Step 3 • Sensors, Camera, Location capabilities, Push Notification, must be tested across mobile and web respectively • PWA vs. Native: Instances, icons, functionality, Gestures 6/29/2018 Google Maps Force Touch (Native App) Google Maps Native vs. PWA ICONS Google Maps PWA Location Prompt Validate PWA Specific Capabilities
  • 26. Progressive Web App – Test Plan Strategy: Step 4 6/29/2018 26© 2015, Perfecto Mobile Ltd. All Rights Reserved. • UI and visual/layout testing across multiple form factors • Performance and rendering of the content across platforms • Network related testing – in addition to the offline mode that is covered through service workers, make sure to cover the app behavior throughout various network conditions (packet loss, flight mode, latency %, 3G, 4G, 5G etc.) • Functionality of the entire page user flows across platforms and screen sizes and resolutions • The differences between browsers, platforms must be covered as well (Chrome, Safari, Android, Samsung Browser vs. built-in browsers like Facebook - number of instances or copies a PWA app can have on a device. Properly Test Across Platforms (RWD)
  • 27. Progressive Web App – Test Plan Strategy: Step 5 6/29/2018 27© 2015, Perfecto Mobile Ltd. All Rights Reserved. Object Identification Strategy Interact with WebView Elements within the PWA App Launch PWA App Close Driver Interact with Native Elements of the PWA App
  • 28. Progressive Web App – Test Plan Strategy: Step 5 6/29/2018 28© 2015, Perfecto Mobile Ltd. All Rights Reserved. Object Identification Strategy
  • 29. Progressive Web App – Test Plan Strategy: Step 5 6/29/2018 29© 2015, Perfecto Mobile Ltd. All Rights Reserved. Object Identification Strategy
  • 30. Progressive Web App – Test Plan Strategy: Step 5 6/29/2018 30© 2015, Perfecto Mobile Ltd. All Rights Reserved. Object Identification Strategy &
  • 31. Progressive Web App – Test Plan Strategy: Step 6 6/29/2018 31© 2015, Perfecto Mobile Ltd. All Rights Reserved. • https://developers.google.com/web/progressive-web-apps/checklist Google’s PWA Checklist Compliance
  • 32. Summary • PWA is growing and embraced by browser vendors as well as enterprises • iOS is lagging behind Android capabilities • Selenium & Visual Testing & Appium is a recommended test automation strategy for PWA • Leverage what you already know and have (RWD, Selenium, Mobile Testing) 6/29/2018 32© 2015, Perfecto Mobile Ltd. All Rights Reserved.