Testing Progressive Web Apps (or How to Achieve App-iness) - Elizabeth Fiennes and Callum Akehurst-Ryan

  • Locked
Elizabeth Fiennes's profile
Elizabeth Fiennes

Callum Akehurst-Ryan's profile
Callum Akehurst-Ryan

Principal Test Engineer

Testing Progressive Web Apps (or How to Achieve App-iness) - Elizabeth Fiennes and Callum Akehurst-Ryan image
Talk Description

First proposed by Google in 2015, Progressive web apps (PWAs) are now in the infant stage of their development. As with any child, people are curious about which developmental direction the technology will take.

What are they though? Are they a thick client/native app that runs in the browser or a web app with some thick client/native app functions? I will help with defining this in this talk and draw out how that definition impacts the testing that needs to be done as a result.

At a simplistic level, a PWA is a layering of technology types, almost a miniature integrated system in itself. It has its own rules on how it will behave depending on how it is built, how it is accessed, the options the end user chooses and any hardware available. As testers, we don’t have the luxury of waiting until an app is all grown up before we start to test it. So how can we test PWAs whilst remaining faithful to shift-left principles?

A couple of years ago, we entered a programme of work that intended to produce multiple PWAs for the financial industry. Never having worked with them before, we did a lot of research and asked industry colleagues for help in understanding the tech. However, there was little to no help forthcoming on how to test for this type of app as the tech was so new. This meant we had to come up with our own! Drawing on comparable experience, trial, error (lots of error) and some tools, we formulated a series of heuristics, automation, methods and processes for testing which we are here to share.

 

Takeaways

  • An understanding of what a PWA is
  • The differentiators between PWAs and native/hybrid/web apps
  • A dissection of the possible tech layers and how to test them in isolation and together
  • How to work out the risks in a PWA
  • How to test for platform-specific issues
  • Getting started - how to find the low hanging fruit type issues using Lighthouse
  • More in-depth - testing a PWS with Selenium and Appium
What you’ll learn

By the end of this talk, you'll be able to:

  • TBA
Elizabeth Fiennes's profile'

Elizabeth Fiennes

Callum Akehurst-Ryan's profile'

Callum Akehurst-Ryan

Principal Test Engineer

Throughout my 15+ year career I’ve had a variety of roles as a Test Engineer, Test Lead and Agile coach. As a result I have a well rounded approach to leadership in an Agile environment, both as part of test and the wider team. I specialise in full stack exploratory testing, embedding Agile testing into start-ups and quality reporting.
Suggested Content
Rise of the Guardians: Testing Machine Learning Algorithms 101 - Patrick Prill
Testing Smarter, Not Harder with DesignWise
Violate Data Format: Injecting a reason to fix
Testing Microservices When the Stakes Are High
A Tester's Guide To Navigating The Wild West Of Web3 Testing
TestChat 4: Discussing AI Testing
Explore MoT
TestBash Brighton 2024
Thu, 12 Sep 2024, 9:00 AM
We’re shaking things up and bringing TestBash back to Brighton on September 12th and 13th, 2024.
A Software Tester’s Guide To Chrome Devtools
Learn how to dig deeper into the Web with the use of Devtools

Tags

  • system-architecture
  • test-design