Can we effectively automate tests for native components on mobile devices in a web app?
At IKEA we want to strive for high quality and high pace release flow. In order to do this, we are looking at ways to improve different parts of our automation setup.
How can we automate components and functionality that is native (for example camera or keyboard input) when a PWA (Progressive Web Application) runs on a mobile device? Could we verify this functionality in the best way? What is the necessary implementation that is required for a development team and how to balance the effort of maintaining against reaching a high level of confidence in our releases.
The vision of IKEA - Physical Meeting Point area, is to enable and help our customers in our stores to find and purchase what they are looking for, in an easy, speedy way. We focus on
- Provide customers with experiences to easily find what they need while in store
- Provide our co-workers with the right digital tools to perform operational tasks
- Provide customers with self-service options to alleviate wait times and free up time for co-workers
Our teams in the Physical Meeting Point area build tools to be used in the stores - both for customers and co-workers. For example self service screens, wayfinding and co-worker operational applications. We deliver our solutions globally, to IKEA stores all over the world.
Investigate what the options are to best automate the test flow for native functionality on mobile devices when running a PWA, and how to set appropriate levels to aim for, taking the cost and time aspects into the equation.
The main steps of the thesis shall be:
- Do a literature study on how to best weight benefits and level of automation vs cost and manual testing
- Explore possible tooling to support the automation of such testing, with pros and cons
- Implement a proof of concept test suite to verify the theory
- Identify some best practices on how to setup, good use cases, and cases where it is not suitable to automate
- Measure potential gains in release time, and needed effort for automation by using this
- Get feedback from stakeholders
Limitations: Any customer related and personal data must not be disclosed according to GDPR. Specific names of IKEA teams / products / company secrets may not be disclosed in accordance with IKEA non-disclosure policies.