QA/Automation/Projects/WebAPI
Overview
As an essential part of Boot2Gecko (Mozilla Firefox OS), the WebAPIs provide access to the device OS, thus allowing html applications to use mobile phone features. For example, a B2G html application can send SMS messages via javascript using the WebSMS WebAPI.
In order to ensure the functionality of the WebAPIs, an extensive WebAPI test suite must be developed. Both the Mochitest and Marionette automation frameworks will be used in the development and execution of the WebAPI tests, which ultimately will be executed on the B2G device emulator on a per-check-in basis.
Name: | WebAPI tests |
Leads: | Rob Wood, Henrik Skupin, Dave Hunt |
Contributors: | n/a |
Repository: | http://mxr.mozilla.org/mozilla-central/source/dom/ |
Tracking Bug: | n/a |
Etherpad: | https://etherpad.mozilla.org/automation-webapi |
Sub Projects
Priority | Feature | Status | Owner | QA testplan |
P1 | WebAPI/WebTelephony | Active | Rob Wood | B2G/QA/WebAPI_Test_Plan/WebTelephony |
P1 | WebAPI/WebSMS | Active | Rob Wood | B2G/QA/WebAPI_Test_Plan/WebSMS |
P1 | WebAPI/ScreenOrientation | Active | Henrik Skupin | B2G/QA/WebAPI_Test_Plan/Screen_Orientation |
Details
For more information about the B2G WebAPI, building B2G, running the tests, etc. please see the links mentioned below.
Specifications and Architecture
General Firefox OS announcement: http://www.mozilla.org/en-US/firefoxos/
Firefox OS on MDN: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS
B2G Wiki: https://wiki.mozilla.org/B2G
B2G architecture overview: https://wiki.mozilla.org/B2G/Architecture
Details and specifications for the WebAPIs planned for B2G V1: https://wiki.mozilla.org/Webapi
Building B2G
Building and installing B2G: https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/Building_and_installing_Boot_to_Gecko
Running the WebAPI Tests
Using the B2G device emulator: https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/Using_the_B2G_emulators
Mochitest overview: https://developer.mozilla.org/en-US/docs/Mochitest
B2G Mochitest: https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/B2G_Mochitests
Marionette overview: https://developer.mozilla.org/en-US/docs/Marionette
B2G Marionette: https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/Setting_Up_Marionette_for_B2G
Running B2G Marionette tests: https://developer.mozilla.org/en-US/docs/Marionette/Running_Tests
Marionette Command Line
You may want to create a shell script to quickly launch your WebAPI Marionette test right from your workspace folder. Create a new shell script and copy/paste the line of code below, and put the script in your path. Then with the emulator already running, you can use the script to easily execute your WebAPI test.
python $B2G_HOME/gecko/testing/marionette/client/marionette/runtests.py --emulator arm --address localhost:2828 --homedir $B2G_HOME $1