WIP: [Quality] Consolidate selector patterns & Add dynamic validation
What does this MR do?
https://gitlab.com/gitlab-org/gitlab-ce/issues/47287
1. implementsthis MR makes the different selector strategies uniform.
element :something
element :something_else, 'link_to something_path'
instead of using the .qa-*
class, this change will implement https://gitlab.com/gitlab-org/gitlab-ce/issues/47287 and use the [data-qa-selector]
strategy instead.
gitlab-qa#280 (closed) and adds dynamic validation on the click_element
and visit
methods
2. implements by specifying click_element :lnk_login, Page::Main::Login
, the QA framework will traverse through the "required" element
s and validate they are present before continuing with the test.
3. rename all elements to use a more uniform hungarian notation for UI elements.
- lnk_test vs test_link
- btn_test vs test_button
- ...
What are the relevant issue numbers?
- https://gitlab.com/gitlab-org/gitlab-ce/issues/47287
- https://gitlab.com/gitlab-org/quality/team-tasks/issues/26
- gitlab-qa#280 (closed)
- https://gitlab.com/gitlab-org/gitlab-ce/issues/45810
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Documentation created/updated -
Tests added for this feature/bug -
Conforms to the code review guidelines -
Conforms to the merge request performance guidelines -
Conforms to the style guides -
Conforms to the database guides
FYI @gl-quality