canmove, Confirmed users
2,041
edits
m (Gmealer moved page B2G/QA/Automation/UI/Strategy/Develop GaiaTest JS to B2G/QA/Automation/UI/Strategy/Develop Gaia UAT) |
No edit summary |
||
| Line 1: | Line 1: | ||
=Objective= | =Objective= | ||
Create a harness on top of Marionette JS that executes and controls a device with the level of care and confidence appropriate to | Create a harness on top of Marionette JS that executes and controls a device with the level of care and confidence appropriate to acceptance testing, as established via Gaia UI Tests in Python. | ||
=Challenges Addressed= | =Challenges Addressed= | ||
| Line 9: | Line 9: | ||
=The Problem= | =The Problem= | ||
Acceptance tests are currently written in Python on top of the Gaia UI Test harness. While this has worked well for us, the organization in general is moving towards JavaScript. | |||
This heavily limits our ability to get development to cooperate in reviewing or making changes to our | This heavily limits our ability to get development to cooperate in reviewing or making changes to our acceptance automation. While QA does own these, some assistance is helpful and Python is a blocker. | ||
In addition, Views (page object equivalents) will be created first in JavaScript to handle | In addition, Views (page object equivalents) will be created first in JavaScript to handle Gaia Integration testing. If we do not align, we will have to reimplement the same basic classes in Python. Further, by using common view objects, developers will effectively maintain the Gaia Acceptance tests on the way to keeping Gaia Integration tests green. | ||
=The Solution= | =The Solution= | ||
| Line 25: | Line 25: | ||
* Transition schedule/gates [Geo] | * Transition schedule/gates [Geo] | ||
* Documentation of Gaia UI Test harness behavior [Geo] | * Documentation of Gaia UI Test harness behavior [Geo] | ||
* Gaia | * Gaia Acceptance v1 implementation [Geo] | ||
* Review and improvement if necessary of View pattern [John] | * Review and improvement if necessary of View pattern [John] | ||
* Establish | * Establish Gaia Acceptance backlog with existing Python UI tests to port [Johan] | ||
* Conduct Q1 Pilot Program (Gaia Integration runs gij on-device) [Martijn] | * Conduct Q1 Pilot Program (Gaia Integration runs gij on-device) [Martijn] | ||
* Help fix Marionette JS on-device when available [Martijn] | * Help fix Marionette JS on-device when available [Martijn] | ||
* If viable in Q1, start porting smoketests to Gaia | * If viable in Q1, start porting smoketests to Gaia Acceptance | ||
Q2: | Q2: | ||
| Line 38: | Line 38: | ||
=Risks= | =Risks= | ||
* | * Acceptance tests must be able to work on-device. Marionette JS is not currently stable on device. | ||
* The gap between Python Gaia UI Test and Marionette JS is not fully known yet. | * The gap between Python Gaia UI Test and Marionette JS is not fully known yet. | ||