UNPKG

@uuv/runner-commons

Version:
310 lines (309 loc) 20.8 kB
[ { "key": "key.when.click.withContext", "description": "Triggers a click on the selected element.<br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.", "wording": "I click" }, { "key": "key.when.click.withRole", "description": "Triggers a click on the element with given role and specific name", "wording": "I click on element with role {string} and name {string}" }, { "key": "key.when.headers.forUriAndMethod", "description": "Sets one or more headers to the indicated http request and only for the Http method (GET / POST / etc...) passed as a argument.<i> If you use Playwright as execution engine, <b>method</b> isn't used.</i>", "wording": "I set header(s) for uri {string} and method {string}" }, { "key": "key.when.headers.forUri", "description": "Sets one or more headers to the indicated http request", "wording": "I set header(s) for uri {string}" }, { "key": "key.when.resetContext", "description": "Deletes selected element and timeout", "wording": "I reset context" }, { "key": "key.when.timeout", "description": "Sets the timeout value (in millisecond) for finding element in the DOM <br />⚠ remember to deselect the element with <b>[I reset context](#i-reset-context)</b> if you're no longer acting on it", "wording": "I set timeout with value {int}" }, { "key": "key.when.type.withContext", "description": "Writes the sentence passed as a parameter (useful for example to fill in a form field).<br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.", "wording": "I type the sentence {string}" }, { "key": "key.when.enter.withContext", "description": "Writes the sentence passed as a parameter (useful for example to fill in a form field).<br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.", "wording": "I enter the value {string}" }, { "key": "key.when.select.withContext", "description": "Select the combo box option passed as a parameter (useful for example to fill in a combobox form field).<br/>Make sure you've selected a combo box element beforehand with the <strong>within a combo box named 'yourComboboxNamee'</strong> phrases.", "wording": "I select the value {string}" }, { "key": "key.when.keyboard.press", "description": "Press specified key: <table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td>{tab}</td><td>Tabulation</td></tr><tr><td>{reverseTab}</td><td>Reverse tabulation</td></tr><tr><td>{down}</td><td>Arrow Down</td></tr><tr><td>{right}</td><td>Arrow Right</td></tr><tr><td>{left}</td><td>Arrow Left</td></tr><tr><td>{up}</td><td>Arrow Up</td></tr></tbody></table><br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.", "wording": "I press {string}" }, { "key": "key.when.keyboard.multiplePress", "description": "Press specified key multiple times using | as: num|{key}", "wording": "I press {int} times on {string}" }, { "key": "key.when.keyboard.nextElement", "description": "Move to the next html element that can be reached with Tab<br/><a target='_blank' href='https://github.com/e2e-test-quest/uuv/blob/main/example/en-keyboard.feature'>Examples</a>", "wording": "I go to next keyboard element" }, { "key": "key.when.keyboard.previousElement", "description": "Move to the previous html element that can be reached with back Tab<br/><a target='_blank' href='https://github.com/e2e-test-quest/uuv/blob/main/example/en-keyboard.feature'>Examples</a>", "wording": "I go to previous keyboard element" }, { "key": "key.when.visit", "description": "Navigate to the Uri passed as a argument (full url consisting of the BASE_URL + Uri) or navigate to Url if begin with http:// or https://", "wording": "I visit path {string}" }, { "key": "key.when.withinElement.ariaLabel", "description": "Selects the element whose aria-label is specified <br />⚠ remember to deselect the element with <b>[I reset context](#i-reset-context)</b> if you're no longer acting on it", "wording": "within the element with aria-label {string}" }, { "key": "key.when.withinElement.selector", "description": "Selects the element whose selector is specified <br />⚠ remember to deselect the element with <b>[I reset context](#i-reset-context)</b> if you're no longer acting on it", "wording": "within the element with selector {string}" }, { "key": "key.when.withinElement.roleAndName", "description": "Selects the element whose [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types) and accessible [name](https://russmaxdesign.github.io/html-elements-names/) are specified <br />⚠ remember to deselect the element with <b>[I reset context](#i-reset-context)</b> if you're no longer acting on it", "wording": "within the element with role {string} and name {string}" }, { "key": "key.when.withinElement.testId", "description": "Selects the element whose data-testId attribute is specified <br />⚠ remember to deselect the element with <b>[I reset context](#i-reset-context)</b> if you're no longer acting on it", "wording": "within the element with testId {string}" }, { "key": "key.when.mock.withBody", "description": "Mock a named API response with body. <i>If you use Playwright as runtime engine, <b>request</b> and <b>named</b> are unused.</i>", "wording": "I mock a request {} on url {string} named {string} with content {}" }, { "key": "key.when.mock.withFixture", "description": "Mock a named API response with file's extension .json, .js, .coffee, .html, .txt, .csv, .png, .jpg, .jpeg, .gif, .tif, .tiff, .zip", "wording": "I mock a request {} on url {string} named {string} with fixture {}" }, { "key": "key.when.mock.withStatusCode", "description": "Mock a named API response with status code", "wording": "I mock a request {} on url {string} named {string} with status code {int}" }, { "key": "key.given.viewport.preset", "description": "Sets the viewport dimensions with one of the presets defined by your runtime engine as Cypress: [Link](https://docs.cypress.io/api/commands/viewport#Arguments) or Playwright: [Link](https://github.com/microsoft/playwright/blob/main/packages/playwright-core/src/server/deviceDescriptorsSource.json)", "wording": "I set viewport to preset {string}" }, { "key": "key.given.viewport.withWidthAndHeight", "description": "Sets the viewport dimensions to the specified width and length", "wording": "I set viewport with width {int} and height {int}" }, { "key": "key.given.keyboard.startNavigationFromTheTop", "description": "Start a keyboard navigation session from the top of the page<br/><a target='_blank' href='https://github.com/e2e-test-quest/uuv/blob/main/example/en-keyboard.feature'>Examples</a>", "wording": "I start a keyboard navigation from the top of the page" }, { "key": "key.then.page.withTitle", "description": "Checks the current html page have the specified title", "wording": "I should see the page title {string}" }, { "key": "key.then.title.withNameAndLevel", "description": "Checks that an Html element exists with [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types) `heading`, the specified [name](https://russmaxdesign.github.io/html-elements-names/) and title level", "wording": "I should see a title named {string} with level {int}" }, { "key": "key.then.attributes.withValues", "description": "Checks Html attributes of the selected element", "wording": "I should see these attributes with values" }, { "key": "key.then.element.withAriaLabelAndContent", "description": "Checks that an Html element exists with the specified aria-label attribute and content", "wording": "I should see an element with aria-label {string} and content {string}" }, { "key": "key.then.element.withAriaLabel", "description": "Checks that an Html element exists with the specified aria-label attribute", "wording": "I should see an element with aria-label {string}" }, { "key": "key.then.element.withContent", "description": "Checks that an Html element exists with the specified content", "wording": "I should see an element with content {string}" }, { "key": "key.then.element.withSelector", "description": "Checks that an Html element exists with the specified selector", "wording": "I should see an element with selector {string}" }, { "key": "key.then.element.withRoleAndNameAndContentDisabled", "description": "Checks that an Html element exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types), [name](https://russmaxdesign.github.io/html-elements-names/) and content, and with the disabled attribute set to true", "wording": "I should see an element with role {string} and name {string} and content {string} disabled" }, { "key": "key.then.element.withRoleAndNameAndContentEnabled", "description": "Checks that an Html element exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types), [name](https://russmaxdesign.github.io/html-elements-names/) and content, and with the disabled attribute set to false", "wording": "I should see an element with role {string} and name {string} and content {string} enabled" }, { "key": "key.then.element.withRoleAndNameAndContent", "description": "Checks that an Html element exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types), [name](https://russmaxdesign.github.io/html-elements-names/) and content", "wording": "I should see an element with role {string} and name {string} and content {string}" }, { "key": "key.then.element.withSelectorFocused", "description": "Checks that the Html element with the specified selector is focused<br/><a target='_blank' href='https://github.com/e2e-test-quest/uuv/blob/main/example/en-keyboard.feature'>Examples</a>", "wording": "the element with selector {string} should be keyboard focused" }, { "key": "key.then.element.withRoleAndNameFocused", "description": "Checks that the Html element with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types) and [name](https://russmaxdesign.github.io/html-elements-names/) is focused<br/><a target='_blank' href='https://github.com/e2e-test-quest/uuv/blob/main/example/en-keyboard.feature'>Examples</a>", "wording": "the element with role {string} and name {string} should be keyboard focused" }, { "key": "key.then.element.withRoleAndName", "description": "Checks that an Html element exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types) and [name](https://russmaxdesign.github.io/html-elements-names/)", "wording": "I should see an element with role {string} and name {string}" }, { "key": "key.then.element.withTestId", "description": "Checks that an Html element exists with the specified data-testid attribute", "wording": "I should see an element with testId {string}" }, { "key": "key.then.list.withNameAndContent", "description": "Checks that there is a list with the specified [name](https://russmaxdesign.github.io/html-elements-names/) containing list items.<br/> <u>Example</u>\\n```gherkin\\nThen I should see a list named \"test-list\" and containing\\n| First element |\\n| Second element |\\n| Third element |\\n```", "wording": "I should see a list named {string} and containing" }, { "key": "key.then.grid.withNameAndContent", "description": "Checks that there is a grid with the specified [name](https://russmaxdesign.github.io/html-elements-names/) containing list items.<br/> <u>Example</u>\\n```gherkin\\nWhen I visit path \"https://e2e-test-quest.github.io/simple-webapp/grid.html\"\\nThen I should see a grid named \"HTML Grid Example\" and containing\\n| Make | Model | Price |\\n| ------------ | ------- | ------ |\\n| Toyota | Celica | 35000 |\\n| Ford | Mondeo | 32000 |\\n| Porsche | Boxster | 72000 |\\n| BMW | M50 | 60000 |\\n| Aston Martin | DBX | 190000 |\\n```", "wording": "I should see a grid named {string} and containing" }, { "key": "key.then.treegrid.withNameAndContent", "description": "Checks that there is a treegrid with the specified [name](https://russmaxdesign.github.io/html-elements-names/) containing list items.<br/> <u>Example</u>\\n```gherkin\\nWhen I visit path \"https://e2e-test-quest.github.io/simple-webapp/treegrid.html\"\\nThen I should see a treegrid named \"HTML Treegrid Example\" and containing\\n| Make | Model | Price |\\n| ------------ | ------- | ------ |\\n| Toyota | Celica | 35000 |\\n| Ford | Mondeo | 32000 |\\n| Porsche | Boxster | 72000 |\\n| BMW | M50 | 60000 |\\n| Aston Martin | DBX | 190000 |\\n```", "wording": "I should see a treegrid named {string} and containing" }, { "key": "key.then.table.withNameAndContent", "description": "Checks that there is a table with the specified [name](https://russmaxdesign.github.io/html-elements-names/) containing list items.<br/> <u>Example</u>\\n```gherkin\\nWhen I visit path \"https://e2e-test-quest.github.io/simple-webapp/table.html\"\\nThen I should see a table named \"test-list\" and containing\\n| Company | Contact | Country |\\n| ----------------------------- | ---------------- | ------- |\\n| Alfreds Futterkiste | Maria Anders | Germany |\\n| Centro comercial Moctezuma | Francisco Chang | Mexico |\\n| Ernst Handel | Roland Mendel | Austria |\\n| Island Trading | Helen Bennett | UK |\\n| Laughing Bacchus Winecellars | Yoshi Tannamuri | Canada |\\n| Magazzini Alimentari Riuniti | Giovanni Rovelli | Italy |\\n```", "wording": "I should see a table named {string} and containing" }, { "key": "key.then.element.not.withContent", "description": "Checks that an Html element does not exists with the specified content", "wording": "I should not see an element with content {string}" }, { "key": "key.then.element.not.withTestId", "description": "Checks that an Html element does not exists with the specified data-testid attribute", "wording": "I should not see an element with testId {string}" }, { "key": "key.then.element.not.withRoleAndName", "description": "Checks that an Html element does not exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types) and [name](https://russmaxdesign.github.io/html-elements-names/)", "wording": "I should not see an element with role {string} and name {string}" }, { "key": "key.then.element.not.withAriaLabel", "description": "Checks that an Html element does not exists with the specified aria-label attribute", "wording": "I should not see an element with aria-label {string}" }, { "key": "key.then.element.nextWithRoleAndNameFocused", "description": "Move to the next html element that can be reached with Tab and checks that the Html element with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types) and [name](https://russmaxdesign.github.io/html-elements-names/) is focused<br/><a target='_blank' href='https://github.com/e2e-test-quest/uuv/blob/main/example/en-keyboard.feature'>Examples</a>", "wording": "the next keyboard element focused should have name {string} and role {string}", "section": "keyboard" }, { "key": "key.then.element.previousWithRoleAndNameFocused", "description": "Move to the previous html element that can be reached with Tab and checks that the Html element with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types) and [name](https://russmaxdesign.github.io/html-elements-names/) is focused<br/><a target='_blank' href='https://github.com/e2e-test-quest/uuv/blob/main/example/en-keyboard.feature'>Examples</a>", "wording": "the previous keyboard element focused should have name {string} and role {string}", "section": "keyboard" }, { "key": "key.then.wait.mock", "description": "Wait that a named mock has been consumed until timeout", "wording": "I should consume a mock named {string}" }, { "key": "key.then.wait.milliSeconds", "description": "Wait milliseconds. <b>Warning:</b> use this sentence <b>in production</b> can make your <b>test flaky</b>.", "wording": "I wait {int} ms" }, { "key": "key.then.a11y.axecore.default", "description": "Check that the current page have no accessibility issue for [axe-core](https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md)", "wording": "I should not have any axe-core accessibility issue" }, { "key": "key.then.a11y.axecore.withFixtureContextAndFixtureOption", "description": "Check that the current page have no accessibility issue for [axe-core](https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md) [with an option](https://github.com/dequelabs/axe-core/blob/HEAD/doc/API.md#options-parameter) on the specific [context](https://github.com/dequelabs/axe-core/blob/HEAD/doc/API.md#context-parameter)", "wording": "I should not have any axe-core accessibility issue with context json fixture {} and option json fixture {}" }, { "key": "key.then.a11y.axecore.withFixtureOption", "description": "Check that the current page have no accessibility issue for [axe-core](https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md) [with an option](https://github.com/dequelabs/axe-core/blob/HEAD/doc/API.md#options-parameter)", "wording": "I should not have any axe-core accessibility issue with option json fixture {}" }, { "key": "key.then.a11y.axecore.onlyCritical", "description": "Check that the current page have not critical accessibility issue for [axe-core](https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md)", "wording": "I should not have any axe-core critical accessibility issue" }, { "key": "key.then.a11y.axecore.withImpacts", "description": "Check that the current page have not accessibility issue for [axe-core](https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md) with one or more impacts in: 'minor','moderate','serious','critical'", "wording": "I should not have any axe-core accessibility issue with {} impact(s)" }, { "key": "key.then.a11y.axecore.withTags", "description": "Check that the current page have not accessibility issue for [axe-core](https://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md) [with one or more Accessibility Standards](https://github.com/dequelabs/axe-core/blob/HEAD/doc/API.md#axe-core-tags)", "wording": "I should not have any axe-core accessibility issue with accessibility standard(s) {}" }, { "key": "key.then.a11y.rgaa.default", "description": "Check that the current page have no [accessibility issue](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standards", "wording": "I should not have any rgaa accessibility issue" }, { "key": "key.then.a11y.rgaa.defaultWithResult", "description": "Check that the current page have the following [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard", "wording": "I should have the following result based on the rgaa reference" }, { "key": "key.then.a11y.rgaa.defaultWithResultContaining", "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard", "wording": "I should have the following partial result based on the rgaa reference" }, { "key": "key.then.combobox.withNameValue", "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard", "wording": "I should see a combo box named {string} with value {string}" }, { "key": "key.then.combobox.selectValue", "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard", "wording": "I select the value {string} in the combo box named {string}" } ]