Page MenuHomePhabricator

Vagrant command for running browser tests
Closed, DeclinedPublic

Description

Željko and I paired today on using xvfb + x11vnc to create a nice and easy setup for running browser tests within the VM while viewing the browser session on the host. I think this setup could be neatly packaged as a MW-Vagrant command that:

  1. Can invoke cucumber within a given extension's (or core's) repository.
  2. Automatically does bundle install beforehand to ensure dependencies are met (this feature may actually allow us to remove Bundler provisioning from extension/role manifests, achieving a smaller base footprint).
  3. Starts an Xvfb process on display :99.
  4. Starts an x11vnc process that listens on the host address (10.11.12.13 by default).
  5. Opens a viewer on the host. (The best way on OS X is open vnc://10.11.12.13:5900 but is there a Linux and Windows equivalent?)
  6. Executes cucumber using the right HEADLESS environment variables to use the already started xvfb session.
  7. Outputs the cucumber results to the user's terminal.
  8. Shuts down both x11vnc and Xvfb at exit.

Event Timeline

dduvall raised the priority of this task from to Needs Triage.
dduvall updated the task description. (Show Details)

Change 206172 had a related patch set uploaded (by Dduvall):
Refactored browser tests provisioning into a role

https://gerrit.wikimedia.org/r/206172

Change 206188 had a related patch set uploaded (by Dduvall):
New x11vnc role for cross-platform viewing of an X11 display

https://gerrit.wikimedia.org/r/206188

I have just stumbled upon this:

https://forge.puppetlabs.com/p0deje/display
Puppet module which sets up Xvfb + x11vnc as remote display

Related to this commit:

https://gerrit.wikimedia.org/r/#/c/206188/
New x11vnc role for cross-platform viewing of an X11 display

Change 206172 abandoned by Dduvall:
Refactored browser tests provisioning into a role

Reason:
Related task was declined long ago.

https://gerrit.wikimedia.org/r/206172

Change 206188 abandoned by Dduvall:
New x11vnc role for cross-platform viewing of an X11 display

Reason:
Related task was declined long ago.

https://gerrit.wikimedia.org/r/206188