generic-poky/bitbake/lib/toaster/tests/browser
Michael Wood 4daae79875 bitbake: toaster: tests Add selenium test layer source switching layer details page
Add selenium tests for the new layer source switching functionality on
the layer details page. Edits the values for git repository and saves
and then edits the details for directory information and saves.

(Bitbake rev: acdfafdd753abe38a313c42e3a9d6211338b4e73)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-02 18:09:50 +01:00
..
README bitbake: toaster-tests: fix URL given for Chromedriver download 2016-07-29 09:53:32 +01:00
__init__.py bitbake: toaster: tests Migrate to Selenium for UI tests 2016-04-01 07:14:58 +01:00
selenium_helpers.py bitbake: toaster-tests: add class SeleniumTestCaseBase for browser tests 2016-07-20 10:38:52 +01:00
selenium_helpers_base.py bitbake: lib/toaster: Fix missing new files from previous commits 2016-08-01 09:38:35 +01:00
test_all_builds_page.py bitbake: toaster-tests: add tests for build time links in the all builds page 2016-08-11 00:09:26 +01:00
test_all_projects_page.py bitbake: toaster: selenium tests Fix all_projects page and sample tests 2016-06-15 08:35:06 +01:00
test_builddashboard_page.py bitbake: toaster-tests: add tests for build dashboard menu and summary visibility 2016-08-11 00:09:27 +01:00
test_builddashboard_page_artifacts.py bitbake: toaster-tests: add tests for build dashboard menu and summary visibility 2016-08-11 00:09:27 +01:00
test_builddashboard_page_recipes.py bitbake: toaster-tests: add tasks and recipes sub-page tests 2016-07-26 08:10:37 +01:00
test_builddashboard_page_tasks.py bitbake: toaster-tests: add tasks and recipes sub-page tests 2016-07-26 08:10:37 +01:00
test_js_unit_tests.py bitbake: toaster-tests: fix tests for latest Selenium version 2016-06-15 08:35:06 +01:00
test_landing_page.py bitbake: toaster: tests Migrate landing page tests to Selenium 2016-04-01 07:14:59 +01:00
test_layerdetails_page.py bitbake: toaster: tests Add selenium test layer source switching layer details page 2016-09-02 18:09:50 +01:00
test_most_recent_builds_states.py bitbake: toaster-tests: add tests for most recent builds state changes 2016-08-11 00:09:27 +01:00
test_new_custom_image_page.py bitbake: toaster: selenium tests Update unique custom image string and fix import 2016-06-15 08:35:06 +01:00
test_new_project_page.py bitbake: toaster: tests test_new_project_page Catch button not enabled exception 2016-08-11 00:07:09 +01:00
test_project_builds_page.py bitbake: toaster: tests Migrate project builds page tests to Selenium 2016-04-01 07:14:59 +01:00
test_project_config_page.py bitbake: bitbake: toaster-tests: tests for project config 2016-07-08 09:57:27 +01:00
test_project_page.py bitbake: toaster: tests Migrate all builds page and project page tests to Selenium 2016-04-01 07:14:58 +01:00
test_sample.py bitbake: toaster: selenium tests Fix all_projects page and sample tests 2016-06-15 08:35:06 +01:00
test_task_page.py bitbake: toaster-tests: add test for showing self-dependent task 2016-08-11 00:09:27 +01:00
test_toastertable_ui.py bitbake: toaster-tests: add tests for reverting to default sort 2016-08-11 00:09:27 +01:00

README

# Running Toaster's browser-based test suite

These tests require Selenium to be installed in your Python environment.

The simplest way to install this is via pip:

  pip install selenium==2.53.2

Note that if you use other versions of Selenium, some of the tests (such as
tests.browser.test_js_unit_tests.TestJsUnitTests) may fail, as these rely on
a Selenium test report with a version-specific format.

To run tests against Chrome:

* Download chromedriver for your host OS from
  https://sites.google.com/a/chromium.org/chromedriver/downloads
* On *nix systems, put chromedriver on PATH
* On Windows, put chromedriver.exe in the same directory as chrome.exe

To run tests against PhantomJS (headless):

* Download and install PhantomJS:
  http://phantomjs.org/download.html
* On *nix systems, put phantomjs on PATH
* Not tested on Windows

To run tests against Firefox, you may need to install the Marionette driver,
depending on how new your version of Firefox is. One clue that you need to do
this is if you see an exception like:

  selenium.common.exceptions.WebDriverException: Message: The browser
  appears to have exited before we could connect. If you specified
  a log_file in the FirefoxBinary constructor, check it for details.

See https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver
for installation instructions. Ensure that the Marionette executable (renamed
as wires on Linux or wires.exe on Windows) is on your PATH; and use "marionette"
as the browser string passed via TOASTER_TESTS_BROWSER (see below).

(Note: The Toaster tests have been checked against Firefox 47 with the
Marionette driver.)

The test cases will instantiate a Selenium driver set by the
TOASTER_TESTS_BROWSER environment variable, or Chrome if this is not specified.

Available drivers:

* chrome (default)
* firefox
* marionette (for newer Firefoxes)
* ie
* phantomjs

e.g. to run the test suite with phantomjs where you have phantomjs installed
in /home/me/apps/phantomjs:

PATH=/home/me/apps/phantomjs/bin:$PATH TOASTER_TESTS_BROWSER=phantomjs manage.py test tests.browser