Horizon/Testing/UI
During the Icehouse cycle we want to set up a robust, UI-driven integration testing framework for Horizon.
Related blueprint: https://blueprints.launchpad.net/horizon/+spec/selenium-integration-testing
Implementation ideas
Directly using Selenium
Point Selenium to a (probably devstack-based) OpenStack installation. Advantages: Simplest solution Disadvantages: Must know Python, must know how to write robust UI-driven tests using Selenium
Translator middleware
A translator framework that makes it possible to write tests in a high-level language (similar to BDD) and makes the tests more resilient to changes in the software implementation details. See also: JBehave. Advantages: Simplify the writing of test scenarios by experienced QA/QE/Testing teams who may not know Python, by enabling them to write the scenarios in English. Disadvantages: The load is now shifted onto the development team who must spend the time keeping the translator layer up to date, and enabling new keywords/scenarios. (?)