deb-horizon/openstack_dashboard/test/integration_tests
Timur Sufiev c573b5b316 Introduce field mappings for FormRegion descendants in i9n tests
This change is similar to the change that introduced decorators for
binding table-level and row-level actions to real table buttons - this
time for forms. Its aim is to provide means to reference a form field
in test using a name different from the one that exists in real
html.

Now it is possible to provide a dictionary for simple FormRegion,
where key is the name to be used in test and the value is used for
binding this name to a real html field widget. Also it is feasible to
provide values other than strings in that dictionary - in this case
they are mean to be a Python class. This Python class will be
initialized as any BaseRegion is usually initialized and then the
value's key will be used for referencing this object. This is useful
when dealing with non-standard widgets in forms (like Membership
widget in Create/Edit Project form or Networks widget in Launch
Instance form).

The old syntax for fields names in tests (the tuple of strings) is
still compatible with new FormRegion-s. It is treated as we had simply
used the same name both for referencing field and for binding it to a
real widget.

Changing TabbedForm region's tabs to be referenced by name instead of
index is out of the scope of this change, but should be done in future.
If not done, we're going to encounter problems with different tabs being
shown or not shown based on RBAC/ enabled settings/ etc.

Implements blueprint: integration-tests-improvements-part1
Change-Id: If3658119176d03dcd0742101ae2922f8e61ba757
2016-01-23 06:47:35 +00:00
..
pages Introduce field mappings for FormRegion descendants in i9n tests 2016-01-23 06:47:35 +00:00
regions Introduce field mappings for FormRegion descendants in i9n tests 2016-01-23 06:47:35 +00:00
tests Improve working with messages in integration tests 2016-01-22 09:35:41 +00:00
__init__.py Integration tests - running the tests 2014-02-26 10:45:21 +00:00
basewebobject.py Reduce number of calls to Selenium for form fields 2016-01-23 06:46:55 +00:00
config.py Remove redundant dashboard.login_url setting from horizon.conf 2016-01-18 21:51:32 +03:00
decorators.py Move integration_tests.tests.decorators one level up 2016-01-18 10:29:22 +03:00
helpers.py Use the horizon.conf's dir as the basedir for i9n screenshots 2015-12-31 15:27:01 +03:00
horizon.conf Remove redundant dashboard.login_url setting from horizon.conf 2016-01-18 21:51:32 +03:00
README.rst Integration tests - running the tests 2014-02-26 10:45:21 +00:00
webdriver.py Enable PhantomJS for running Selenium tests 2015-11-25 11:25:51 +11:00

Horizon Integration Tests

Horizon's integration tests treat Horizon as a black box.

Running the integration tests

  1. Set up an OpenStack server

  2. Update the configuration file at horizon.conf

  3. Run the tests. :

    $ ./run_tests.sh --integration

More information

https://wiki.openstack.org/wiki/Horizon/Testing/UI

https://wiki.mozilla.org/QA/Execution/Web_Testing/Docs/Automation/StyleGuide#Page_Objects