B2G/QA/Automation/UI/Strategy/Develop Gaia End to end: Difference between revisions

no edit summary
(Created page with "=Strategy: Create GaiaTest JS= ==Objective== Create a harness on top of Marionette JS that executes and controls a device with the level of care and confidence appropriate t...")
 
No edit summary
Line 1: Line 1:
=Strategy: Create GaiaTest JS=
=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 UATs, as established via GaiaTest Python.
Create a harness on top of Marionette JS that executes and controls a device with the level of care and confidence appropriate to UATs, as established via GaiaTest Python.


==The Problem==
=The Problem=


UATs are currently written in Python on top of GaiaTest. While this has worked well for us, the organization in general is moving towards JavaScript.  
UATs are currently written in Python on top of GaiaTest. While this has worked well for us, the organization in general is moving towards JavaScript.  
Line 13: Line 11:
In addition, Views (page object equivalents) will be created first in JavaScript to handle CI 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 UATs on the way to keeping CI tests green.
In addition, Views (page object equivalents) will be created first in JavaScript to handle CI 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 UATs on the way to keeping CI tests green.


==The Solution==
=The Solution=


Analyze GaiaTest on Python and implement any missing pieces on top of Marionette JS and Mocha, as appropriate. Port existing tests to the new harness.
Analyze GaiaTest on Python and implement any missing pieces on top of Marionette JS and Mocha, as appropriate. Port existing tests to the new harness.


==Timeline==
=Timeline=


Q1:
Q1:
Line 34: Line 32:
* Port smoketests not addressed in Q1
* Port smoketests not addressed in Q1


==Risks==
=Risks=


* UATs must be able to work on-device. Marionette JS is not currently stable on device.
* UATs must be able to work on-device. Marionette JS is not currently stable on device.
* The gap between Python GaiaTest and Marionette JS is not fully known yet.
* The gap between Python GaiaTest and Marionette JS is not fully known yet.
canmove, Confirmed users
2,041

edits