Details
-
Sub-task
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
Future Dev
Description
Behat allows us to hook it's processes (http://docs.behat.org/guides/3.hooks.html) and inject code to fill our needs.
- Each test has to run separately as it can not be affected by the data/garbage other tests left, also tests can be filtered and the data would not be the same every run and it would lead to inconsistencies, so we need to reset the database after each scenario.
- Prevent parallel tests execution with a lock, related with the point above
- Is very important to ensure that the database and the dataroot we are going to reset is not the production environment, so before the tests begins to run is important to check where are we going to write/read
- Since it is a new tool the more info we can provide to the user more fast will be the adoption or the initial usage
While we can we will be Selenium-independent and interact only with the Behat API so if we want to change to a faster driver in future (http://mink.behat.org/#different-browsers-drivers) we don't need to change our steps definitions; this seems contradictory with some messages (@see behat_hooks::before_scenario_javascript for example) that splicitly references to Selenium, this is to avoid adding more abstract nomenclature.
Attachments
Issue Links
- will be (partly) resolved by
-
MDL-37750 Ensure elements are available
-
- Closed
-