• Skip to main content
  • Select language
  • Skip to search
MDN Web Docs
  • Technologies
    • HTML
    • CSS
    • JavaScript
    • Graphics
    • HTTP
    • APIs / DOM
    • WebExtensions
    • MathML
  • References & Guides
    • Learn web development
    • Tutorials
    • References
    • Developer Guides
    • Accessibility
    • Game development
    • ...more docs
B2G OS
  1. MDN
  2. Archive of obsolete content
  3. B2G OS
  4. Automated Testing of B2G OS
  5. Viewing CI test results

Viewing CI test results

In This Article
  1. Gaia-Try: Git pull requests and Treeherder
  2. Firefox OS builds for Device and the Desktop Firefox OS simulator
  3. GIP Device tests reporting to Jenkins
  4. Running Treeherder Try jobs against Gaia builds
  5. Treeherder glossary
    1. Types of Builds
    2. Types of tests
  6. Hacking on Treeherder

Treeherder is where test results are reported for tests being run in buildbot continuous integration. We test builds and run tests against all try and trunk branches, including b2g-inbound, mozilla-central, and Firefox OS release branches. This article explains a bit more about Treeherder, and provides useful terminology.

Note: See the Test Execution Chart to find out which tests are being run where.

Gaia-Try: Git pull requests and Treeherder

Whenever a pull request is created against mozilla-b2g's gaia repository, Mozilla picks up that branch and runs the Gaia suite of tests against it. This is very similar to how Travis works.

The Try Server Hook will comment in your pull request with a link to Treeherder job it has created against your pull request. From here you can review the stability of your patch and whether it is suitable to be merged.

Firefox OS builds for Device and the Desktop Firefox OS simulator

For each commit, Treeherder will attempt to create builds for several different devices, including Hamachi and Flame and also desktop B2G (Firefox OS simulator) builds for linux64 and macos64.

GIP Device tests reporting to Jenkins

For various reasons (notably test runtime) the device tests cannot integrate cleanly with Treeherder. Instead, a standalone Jenkins consumes the Treeherder builds and runs device tests, but with less frequency and on fewer trees. The results and artifacts like output report and logcat are reported back to treeherder but are hidden. Click the "Show hidden jobs" button on your Treeherder job to see the test results.

Running Treeherder Try jobs against Gaia builds

For testing Gecko patches against Firefox OS and Gaia you can push to Try as normal but use the correct trychooser syntax to make sure that Firefox OS and Gaia tests are run.  An additional advantage of this is that you can test Gecko and Gaia patches simultaneously by pointing Try to your own Gaia fork. it requires using hg. If you don't want to use hg directly, you can use moz-git-tools.

If you've never pushed to Try, you'll want to read the basic How to push to Try instructions first.

Like all try jobs, this requires Level 1 commit access.  If you want to run all tests on B2G Desktop builds with your custom Gaia fork, the correct trychooser syntax is as follows:

try: -b o -p linux64_gecko,linux32_gecko,macosx64_gecko -u all -t none

Treeherder glossary

This section lists some common terms and syntax.

Types of Builds

  • "B2G Desktop <platform>" rows: These refer to b2g desktop builds.
  • "B2G Device Image" row: These are builds for full-stack b2g images, for both devices (like the Flame) and emulators.

Types of tests

  • Gu: These are Gaia unit tests.
  • Gij: These are Gaia integration tests written in JavaScript.
  • Gip: These are Gaia UI tests written in Python.
  • M: These are Mochitests. These have numbers associated with them since they execute tests in chunks.
  • R, J and C: These are Reftests, JSreftests, and Crashtests. These have numbers associated with them since they execute tests in chunks.
  • X: These are XPCShell tests.
  • Mn: These are Marionette unit tests (tests the Marionette framework itself).
  • Mnw: These are Marionette unit and WebAPI tests.

Hacking on Treeherder

There are development notes and links to source code at https://wiki.mozilla.org/Auto-tools/Projects/Treeherder.

Document Tags and Contributors

Tags: 
  • Automation
  • Jenkins
  • tests
  • Treeherder
 Contributors to this page: chrisdavidmills, emorley, __Vinz__, teoli, zac_c, jryans, jgriffin, lizhenry, clint_talbert, mdas
 Last updated by: chrisdavidmills, Feb 27, 2017, 3:02:13 AM
See also
  1. Build and install
    1. Build and install overview
    2. B2G OS build process summary
    3. Build prerequisites
    4. Preparing for your first build
    5. Building B2G OS
    6. B2G installer add-on
    7. Building B2G OS for Flame on Mac OS X
    8. Choosing how to run Gaia or B2G OS
    9. Compatible Devices
    10. Installing B2G OS on a mobile device
    11. Creating and applying B2G OS update packages
    12. Building and installing FOTA community builds
    13. B2G build variables reference sheet
  2. Porting B2G OS
    1. Porting overview
    2. Porting basics
    3. Porting on CyanogenMod
  3. Developing Gaia
    1. Developing Gaia overview
    2. Running the Gaia codebase
    3. Run Gaia on desktop using Mulet
    4. Understanding the Gaia codebase
    5. Making Gaia code changes
    6. Testing Gaia code changes
    7. Submitting a Gaia patch
    8. Gaia build system primer
    9. Different ways to run Gaia
    10. Make options reference
    11. Gaia tools reference
  4. B2G OS APIs