B2G/QA/Automation/UI/MarionetteJS On Device Status

< B2G‎ | QA‎ | Automation‎ | UI

Contents

Introduction

Currently, the MarionetteJS tests can only be run on b2g desktop. The plan is to get them running on device too, just like the Gaia UI tests are running on device. The work being done to get MarionetteJS running on device is being done by Ghislain Aus Lacroix [:aus], James Lal [:lightsofapollo] and Gareth Aye [:gaye]

Setup

Instructions for running them on device are here: https://developer.mozilla.org/en-US/Firefox_OS/Platform/Automated_testing/Gaia_integration_tests

Basically, what you need to do is:

  • Connect a device (Flame) that has an engineering build on it
  • On the command line, type: BUILDAPP=device make test-integration

In addition, the following steps probably need to be carried out (although that might change): https://bugzilla.mozilla.org/show_bug.cgi?id=994764#c6

  • Install libzmq, one of:
    • sudo apt-get install libzmq3-dev
    • sudo yum install zeromq3-devel
    • sudo brew install zmq
  • Install runner-service:
    • cd gaia/tests/python/runner-service
    • python setup.py install
  • Install npm packages
    • npm install marionette-socket-host
    • npm install mocha-socket-reporter
  • Connect device and run:
    • gaia-integration --buildapp device

Limitations of MarionetteJS

  • Not possible to run from a manifest
    • So things like filter by abilities (like "is a SIM card required?") is not possible
  • Not possible to push/pull/delete files on the device
  • Not possible to run on a 319MB device
    • Currently, MarionetteJS requires more memory than gaia-ui test

Status

References