B2G/QA/Automation/Style Guide/General Concepts
As Firefox OS is web-based, it end-to-end automation is based upon WebDriver. A well-known implementation of the WebDriver APIs is Selenium. Firefox OS automation uses another one: Marionette.
This Style Guide document is describing some of the best practices that you can find in the Selenium world. If one practice is missing here or contradicts on you can find in Selenium's, we would be glad to discuss it on IRC, in #fxosqa
Webdriver can be used for integration testing. The tests written here are meant to be end-to-end, as in you test the whole system, in real conditions. Testing in real condition means testing like a real user would do: doing action with something a user can interact with and verifying what this user can actually perceive.
Here you can find more details about the differences between integration and end-to-end testing.
Commonly Used Words
- Marionette (Python): The framework currently used for end-to-end testing.
- Gip: Gaia Integration Python. The old name of the end-to-end suite, when the differences between integration and end-to-end weren't documented.
- Treeherder is a reporting dashboard for checkins to Mozilla projects. Gij results are shown on Treeherder, Gip used to be, but isn't anymore.