SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Progressive Web
App Testing
Kalhan Randula Liyanage
What is a PWA ?
2
Web applications that are regular web pages or
websites, but can appear to the user like traditional
applications or native mobile applications
A term that originated in 2015 from within the heart of Google
A set of design principles that guide the developers to use the
provisional capabilities of the web browser encompasses the PWAs
Why
Progressive
Web Apps?
3
2.5 billion people use smartphones today
Mobile app for an online business is a must
Modern browsers can provide features that
are usually utilized by native applications on
various operating systems
Principles of
Progressive
Web Apps
4
Progressive web
apps
Progressive
Responsive
Connectivity
independent
App like
Safe
Search
friendly
Re-
engageable
Fresh
Installable
Linkable
Primary
characteristics
of PWA defined
by Google
5
Reliable
Fast
Engaging
Reliability
6
The modern browsers have a feature called service worker.
Regular websites need the network connection to load the page and
provide service.
A service worker can load the webpage instantly with some stored
content irrespective of the network condition.
This improves reliability as all the users would be able to see some of
the page components loaded immediately with some data as well.
The pre-caching of information will allow the web application to provide
functionalities even with the absence of a network connection.
Speed
7
Speed is a significant performance metric for a Progressive Web
App.
A study by Google on website performance found out that a mobile
user will navigate away from the website if it takes more than 3
seconds to load.
To make sure users aren’t lost due to the long loading time, PWAs
follow the principles of building simple, light weight components
that are faster to load.
Engaging Experience
8
Progressive Web Apps are installable and live on the user's home
screen, without the need for an app store.
They offer an immersive full screen experience with help from a
web app manifest file and can even re-engage users with
web push notifications.
The Web App Manifest allows you to control how your app
appears and how it's launched.
You can specify home screen icons, the page to load when the
app is launched, screen orientation.
PWA
Architecture
9
Key components
of PWAs
Manifest
file
Service
Worker
manifest.json
10
An app manifest file should describe the resources your app
will need.
This includes your app’s displayed name, icons, as well as
splash screen.
If you link to the manifest file in your index.html, browsers
will detect that and load the resources for you.
Service
Worker
11
A service worker, written in JavaScript, is like a client-
side proxy and puts you in control of the cache and
how to respond to resource requests.
By pre-caching key resources you can eliminate the
dependence on the network, ensuring an instant and
reliable experience for your users.
Service worker provides a programmatic way to cache
app resources. Be it JavaScript files or JSON data
from a HTTP request.
• Display and interact with notifications (native OS)
• Manage all network traffic of the page and do any
manipulations
• Background sync APIs - defer actions until users
have stable connection
• Subscribe to push services
12
Examples of
PWA
implementations
13
Testing
PWAs
14
Manual testing
• Testing on various browsers and devices (older browsers will not support PWAs)
• Capability to add the PWA to the home screen
• It should start to behave like an app and not like a website when click on icon
• Testing without network connection (in airplane mode)
• Testing the icons, splash screen, start URL, background colors, display type, initial
orientation and theme colors are properly displayed across browsers
Google Lighthouse
15
Lighthouse is an open-
source, automated tool for
improving the quality of your
web apps.
Can be used by run from the
command line, as a Node
module, or by installing the
Chrome Extension.
Lighthouse also provides a
REST API which is consumed
by sites like web.dev and
PageSpeed Insights.
References:
16
To measure website performance
• https://web.dev/measure
Google lighthouse
• https://chrome.google.com/webstore/detail/lighthouse/blipmdconlkpinefehnmjam
mfjpmpbjk?hl=en
Progressive Web App Checklist
• https://developers.google.com/web/progressive-web-apps/checklist

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)
Zhentian Wan
 

Was ist angesagt? (20)

Progressive Web Apps are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
 
Progressive Web Apps - Up & Running
Progressive Web Apps - Up & RunningProgressive Web Apps - Up & Running
Progressive Web Apps - Up & Running
 
PWA - Progressive Web App
PWA - Progressive Web AppPWA - Progressive Web App
PWA - Progressive Web App
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Push notification to the open web
Push notification to the open webPush notification to the open web
Push notification to the open web
 
Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)
 
Angular webinar - Credo Systemz
Angular webinar - Credo SystemzAngular webinar - Credo Systemz
Angular webinar - Credo Systemz
 
Pwa demystified
Pwa demystifiedPwa demystified
Pwa demystified
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web Apps
 
Progressive Web Apps(PWA)
Progressive Web Apps(PWA)Progressive Web Apps(PWA)
Progressive Web Apps(PWA)
 
Progressive web apps with Angular 2
Progressive web apps with Angular 2Progressive web apps with Angular 2
Progressive web apps with Angular 2
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web apps
 
Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016
 
Why Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your BusinessWhy Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your Business
 
My learnings on web performance optimization while building a Progressive Web...
My learnings on web performance optimization while building a Progressive Web...My learnings on web performance optimization while building a Progressive Web...
My learnings on web performance optimization while building a Progressive Web...
 
PWAs overview
PWAs overview PWAs overview
PWAs overview
 
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App
 

Ähnlich wie Progressive web app testing

Ähnlich wie Progressive web app testing (20)

Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
 
Checklist for progressive web app development
Checklist for progressive web app developmentChecklist for progressive web app development
Checklist for progressive web app development
 
PWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
PWA ( Progressive Web Apps ) - Sai Kiran KasireddyPWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
PWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
pwa-170717082930.pdf
pwa-170717082930.pdfpwa-170717082930.pdf
pwa-170717082930.pdf
 
Basic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web AppsBasic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web Apps
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Progressive Web Apps (PWAs) - Transforming the Future of Full-Stack Developme...
Progressive Web Apps (PWAs) - Transforming the Future of Full-Stack Developme...Progressive Web Apps (PWAs) - Transforming the Future of Full-Stack Developme...
Progressive Web Apps (PWAs) - Transforming the Future of Full-Stack Developme...
 
SEMINAR (pwa).pptx
SEMINAR (pwa).pptxSEMINAR (pwa).pptx
SEMINAR (pwa).pptx
 
Progressive web apps for e commerce
Progressive web apps for e commerceProgressive web apps for e commerce
Progressive web apps for e commerce
 
The importance of developing PWAs in ReactJs
The importance of developing PWAs in ReactJsThe importance of developing PWAs in ReactJs
The importance of developing PWAs in ReactJs
 
PWA basics for developers
PWA basics for developersPWA basics for developers
PWA basics for developers
 
progressive web app
 progressive web app progressive web app
progressive web app
 
How OutSystems Accelerates PWA Development
How OutSystems Accelerates PWA DevelopmentHow OutSystems Accelerates PWA Development
How OutSystems Accelerates PWA Development
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps   Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps
 
How to Create Progressive Web Apps (PWAs) with the help of Laravel.pdf
How to Create Progressive Web Apps (PWAs) with the help of Laravel.pdfHow to Create Progressive Web Apps (PWAs) with the help of Laravel.pdf
How to Create Progressive Web Apps (PWAs) with the help of Laravel.pdf
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
WTF R PWAs?
WTF R PWAs?WTF R PWAs?
WTF R PWAs?
 

Mehr von Kalhan Liyanage (7)

Cucumber for automated acceptance testing.pptx
Cucumber for automated acceptance testing.pptxCucumber for automated acceptance testing.pptx
Cucumber for automated acceptance testing.pptx
 
Stay Young At Heart
Stay Young At HeartStay Young At Heart
Stay Young At Heart
 
Microsoft corporation
Microsoft corporationMicrosoft corporation
Microsoft corporation
 
How to do a Formal presentaion - features and how to design a formal presentaion
How to do a Formal presentaion - features and how to design a formal presentaionHow to do a Formal presentaion - features and how to design a formal presentaion
How to do a Formal presentaion - features and how to design a formal presentaion
 
The iron lady margaret thatcher
The iron lady margaret thatcherThe iron lady margaret thatcher
The iron lady margaret thatcher
 
database recovery techniques
database recovery techniques database recovery techniques
database recovery techniques
 
Nanotechnology
NanotechnologyNanotechnology
Nanotechnology
 

Kürzlich hochgeladen

Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Kürzlich hochgeladen (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 

Progressive web app testing

  • 2. What is a PWA ? 2 Web applications that are regular web pages or websites, but can appear to the user like traditional applications or native mobile applications A term that originated in 2015 from within the heart of Google A set of design principles that guide the developers to use the provisional capabilities of the web browser encompasses the PWAs
  • 3. Why Progressive Web Apps? 3 2.5 billion people use smartphones today Mobile app for an online business is a must Modern browsers can provide features that are usually utilized by native applications on various operating systems
  • 4. Principles of Progressive Web Apps 4 Progressive web apps Progressive Responsive Connectivity independent App like Safe Search friendly Re- engageable Fresh Installable Linkable
  • 5. Primary characteristics of PWA defined by Google 5 Reliable Fast Engaging
  • 6. Reliability 6 The modern browsers have a feature called service worker. Regular websites need the network connection to load the page and provide service. A service worker can load the webpage instantly with some stored content irrespective of the network condition. This improves reliability as all the users would be able to see some of the page components loaded immediately with some data as well. The pre-caching of information will allow the web application to provide functionalities even with the absence of a network connection.
  • 7. Speed 7 Speed is a significant performance metric for a Progressive Web App. A study by Google on website performance found out that a mobile user will navigate away from the website if it takes more than 3 seconds to load. To make sure users aren’t lost due to the long loading time, PWAs follow the principles of building simple, light weight components that are faster to load.
  • 8. Engaging Experience 8 Progressive Web Apps are installable and live on the user's home screen, without the need for an app store. They offer an immersive full screen experience with help from a web app manifest file and can even re-engage users with web push notifications. The Web App Manifest allows you to control how your app appears and how it's launched. You can specify home screen icons, the page to load when the app is launched, screen orientation.
  • 10. manifest.json 10 An app manifest file should describe the resources your app will need. This includes your app’s displayed name, icons, as well as splash screen. If you link to the manifest file in your index.html, browsers will detect that and load the resources for you.
  • 11. Service Worker 11 A service worker, written in JavaScript, is like a client- side proxy and puts you in control of the cache and how to respond to resource requests. By pre-caching key resources you can eliminate the dependence on the network, ensuring an instant and reliable experience for your users. Service worker provides a programmatic way to cache app resources. Be it JavaScript files or JSON data from a HTTP request. • Display and interact with notifications (native OS) • Manage all network traffic of the page and do any manipulations • Background sync APIs - defer actions until users have stable connection • Subscribe to push services
  • 12. 12
  • 14. Testing PWAs 14 Manual testing • Testing on various browsers and devices (older browsers will not support PWAs) • Capability to add the PWA to the home screen • It should start to behave like an app and not like a website when click on icon • Testing without network connection (in airplane mode) • Testing the icons, splash screen, start URL, background colors, display type, initial orientation and theme colors are properly displayed across browsers
  • 15. Google Lighthouse 15 Lighthouse is an open- source, automated tool for improving the quality of your web apps. Can be used by run from the command line, as a Node module, or by installing the Chrome Extension. Lighthouse also provides a REST API which is consumed by sites like web.dev and PageSpeed Insights.
  • 16. References: 16 To measure website performance • https://web.dev/measure Google lighthouse • https://chrome.google.com/webstore/detail/lighthouse/blipmdconlkpinefehnmjam mfjpmpbjk?hl=en Progressive Web App Checklist • https://developers.google.com/web/progressive-web-apps/checklist