Skip to content

Docker image to run a set of Selenium tests for testing Hawk

License

Notifications You must be signed in to change notification settings

emiura/hawk_test

 
 

Repository files navigation

Hawk end to end tests.

This Docker image runs a set of Selenium tests for testing Hawk

The following tests are executed by openQA during ci regularly.

As developer you can execute them manually when you do an update on hawk.

Pre-requisites:

Quickstart:

  1. Create the docker image docker build . -t hawk_test

  2. Run the tests with: docker run --ipc=host -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY hawk_test -H 10.162.32.175 -S 10.162.29.122 -s linux --xvfb

Notes:

  • You may want to add --net=host if you have problems with DNS resolution.

Dependencies

  • OS packages:
  • Python packages:
    • paramiko
    • selenium
    • PyVirtualDisplay

Options

  -h, --help            show this help message and exit
  -b {firefox,chrome,chromium}, --browser {firefox,chrome,chromium}
                        Browser to use in the test
  -H HOST, --host HOST  Host or IP address where HAWK is running
  -S SLAVE, --slave SLAVE
                        Host or IP address of the slave
  -I VIRTUAL_IP, --virtual-ip VIRTUAL_IP
                        Virtual IP address in CIDR notation
  -P PORT, --port PORT  TCP port where HAWK is running
  -s SECRET, --secret SECRET
                        root SSH Password of the HAWK node
  -r RESULTS, --results RESULTS
                        Generate hawk_test.results file for use with openQA.
  --xvfb                Use Xvfb. Headless mode

FAQ

  • Why Xvfb?
    • The -headless in both browsers still have bugs, specially with modal dialogs.
    • Having Xvfb prevents it from connecting to our X system.
  • Why docker?
    • The Docker image packs the necessary dependencies in such a way that fits the compatibility matrix between Python, Selenium, Firefox (and Geckodriver) & Chromium (and Chromedriver).

About

Docker image to run a set of Selenium tests for testing Hawk

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.1%
  • Dockerfile 1.7%
  • Makefile 0.2%