1.2 KiB
1.2 KiB
Style guide for writing GUI tests
This document describes the conventions used at GitLab for writing GUI tests using the GitLab QA project.
click_
versus go_to_
When to use click_
?
When clicking in a single link to navigate, use click_
.
E.g.:
def click_ci_cd_pipelines
within_sidebar do
click_element :link_pipelines
end
end
From a testing perspective, if we want to check that clicking a link, or a button (a single interaction) is working as intended, we would want the test to read as:
- Click a certain element
- Verify the action took place
When to use go_to_
?
When interacting with multiple elements to go to a page, use go_to_
.
E.g.:
def go_to_operations_environments
hover_operations do
within_submenu do
click_element(:operations_environments_link)
end
end
end
go_to_
fits the definition of interacting with multiple elements very well given it's more of a meta-navigation action that includes multiple interactions.
Notice that in the above example, before clicking the :operations_environments_link
, another element is hovered over.
We can create these methods as helpers to abstract multi-step navigation.