0.1.0-beta.53 • Published 1 year agoCLI
cucumber-playwright-framework
Licence
MIT
Version
0.1.0-beta.53
Deps
30
Size
976 kB
Vulns
1
Weekly
0
Introduction
Quick Start
$ npx create-bdd-test-framework e2e-test
$ cd e2e-test
$ npm run test
$ npm run test:report
Creating an BDD Test Framework
You’ll need to have Node >= 16 on your local development machine. You can use nvm (macOS/Linux) or nvm-windows to switch Node versions between different projects.
To create a new BDD Test Framework using cucumber-playwright-framework library, you may choose one of the following methods:
npx
npx create-bdd-test-framework e2e-test
npm
npm init bdd-test-framework e2e-test
Yarn
yarn create bdd-test-framework e2e-test
Executing the automated test scenarios
cd e2e-test
npm run test
Generate HTML report
npm run test:report
Step definitions
Given steps
| Step | Summary |
|---|---|
| Given the <actorName> is on the "<pageName>" page of the "<appName>" app | Opens the application landing page in a new browser based on the app config defined in test.config.jsonDetailsExamples: Given the Host is on the "create-event" page of the "events" app Method: stepOpenLandingPageOfAppUsingConfig(scenarioWorld: ScenarioWorld, actorName: string, pageName: string, appName: string): Promise<void> |
| Given the <actorName> (open|opens) the "<pageName>" page of the "<appName>" app with the "<appURL>" URL | Opens the application landing page in a new browser based on the URLDetailsExamples: Given the host opens the "create-event" page of the "events" app with the "http://localhost:3000/Meeting" URL Method: stepOpenLandingPageOfAppUsingURL(scenarioWorld: ScenarioWorld, actorName: string, pageName: string, appName: string, url: string): Promise<void> |
| Given the <actorName> (open|opens) the "<appName>" app using the auth state of "<userName>" user | Opens the application landing page in a new browser based on the app config defined in test.config.json with auth state injectedDetailsExamples: Given the host opens the "events" app using the auth state of "admin" user Method: stepOpenAppUsingConfigWithAuthState(scenarioWorld: ScenarioWorld, actorName: string, appName: string, user: string): Promise<void> |
| Given the <actorName> (open|opens) the "<appName>" app with the "<appURL>" URL using the auth state of "<userName>" user | Opens the application landing page in a new browser based on the URL with auth state injectedDetailsExamples: Given the host opens the "events" app with the "http://localhost:3000/login" URL using the auth state of "admin" user Method: stepOpenAppUsingURLWithAuthState(scenarioWorld: ScenarioWorld, actorName: string, appName: string, user: string, url: string): Promise<void> |
| Given the <actorName> (open|opens) the "<pageName>" page of the "<appName>" app with the "<appURL>" URL from "<locationName>" location | Opens the application landing page in a new browser based on the URL in the specified geo-location. For different geo-location refer https://www.browserstack.com/docs/ip-geolocationDetailsExamples: Given the host opens the "create-event" page of the "events" app with the "http://sampleapps:3000/Meeting" URL from "IN" location Method: stepOpenLandingPageOfAppUsingURLFromLocation(scenarioWorld: ScenarioWorld, actorName: string, pageName: string, appName: string, url: string, location: string): Promise<void> |
When steps
| Step | Summary |
|---|---|
| When (the <actorName>|I) (check|checks|select|selects) the "<elementSelectorName>" | Check a checkbox or radio buttonDetailsExamples: When the host checks the "simulcast option" When I select the "debugging option" Method: stepCheckTheCheckbox(scenarioWorld: ScenarioWorld, selectorName: string): Promise<void> |
| When (the <actorName>|I) (uncheck|unchecks|unselect|unselects) the "<elementSelectorName>" | Uncheck a checkbox or radio buttonDetailsExamples: When the host unchecks the "simulcast option" When I unselect the "debugging option" Method: stepUncheckTheCheckbox(scenarioWorld: ScenarioWorld, selectorName: string): Promise<void> |
| When (the <actorName>|I) (check|checks|select|selects) the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Check a checkbox or radio button by replacing the placeholder name with a value in the element selectorDetailsExamples: When the host checks the "role option" with the placeholder "ROLENAME:Auditor" When I select the "logging option" with the placeholder "LOGGER:debug" Method: stepCheckTheCheckbox(scenarioWorld: ScenarioWorld, selectorName: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (uncheck|unchecks|unselect|unselects) the "<elementSelectorName>" with placeholder "<placeHolderName:placeHolderValue>" | Uncheck a checkbox or radio button by replacing the placeholder name with a value in the element selectorDetailsExamples: When the user unchecks the "role option" with the placeholder "ROLENAME:Auditor" When I unselect the "logging option" with the placeholder "LOGGER:debug" Method: stepUncheckTheCheckbox(scenarioWorld: ScenarioWorld, selectorName: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (clicks|click) on the "<elementSelectorName>" | Click on an elementDetailsExamples: When the host clicks on the "next button" When I click on the "continue button" Method: stepClickOnTheElement(scenarioWorld: ScenarioWorld, selectorName: string): Promise<void> |
| When (the <actorName>|I) (clicks|click) on the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Click on an element by replacing the placeholder name with a value in the element selectorDetailsExamples: When the host clicks on the "video view" with the placeholder "USERNAME:John" When I click on the "video tab" with the placeholder "VIDEONAME:ScreenShare" Method: stepClickOnTheElement(scenarioWorld: ScenarioWorld, selectorName: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (clicks|click) on the location at "<elementSelectorName>" | Click on an element using locationsDetailsExamples: When the host clicks on the location at "next button" When I click on the location at "continue button" Method: stepClickOnTheElementLocation(scenarioWorld: ScenarioWorld, selectorName: string): Promise<void> |
| When (the <actorName>|I) (store|stores) the clipboard text as a "<variableName>" variable | Store the clipboard text in the local storeDetailsExamples: When the user stores the clipboard text as a "VIEWER_URL" variable When I store the clipboard text as a "CO_HOST_URL" variable Method: stepStoreClipboardText(scenarioWorld: ScenarioWorld, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName>/I) (store|stores) the clipboard text as a "<variableName>" variable in (local|global) data store | Store the clipboard text in the local or global data storeDetailsExamples: When the user stores the clipboard text a "VIEWER_URL" variable in the local data store When I store the clipboard text as a "CO_HOST_URL" variable in the global data store Method: stepStoreClipboardText(scenarioWorld: ScenarioWorld, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName> |I )?(store|stores) the "<USER_DATA>" data as a "<variableName>" variable in the (local|global) data store | Store the given data in the local or global data storeDetailsExamples: When the host stores the "All-Hands" data as a "MEETING_NAME" variable in the local data store When store the "All-Hands" data as a "MEETING_NAME" variable in the local data store Method: storeData(scenarioWorld: ScenarioWorld, dataStoreType: string, variableName: string, variableValue: unknown): void |
| When (the <actorName> |I )?(store|stores) the "<USER_DATA>" data as a "<variableName>" in the (environment) variable | Store the given data in the environment variableDetailsExamples: When the host stores the "All-Hands" data as a "MEETING_NAME" in the environment variable When store the "All-Hands" data as a "MEETING_NAME" in the environment variable Method: storeData(scenarioWorld: ScenarioWorld, dataStoreType: string, variableName: string, variableValue: unknown): void |
| When (the <actorName>|I) (hover|hovers) the mouse over the "<elementSelectorName>" | Hover the mouse over the elementDetailsExamples: When the publisher hovers the mouse over the "footer" When I hover the mouse over the "next button" Method: stepHoverOverTheElement(scenarioWorld: ScenarioWorld, selectorName: string): Promise<void> |
| When (the <actorName>|I) (hover|hovers) the mouse over the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Hover the mouse over the element by replacing the placeholder name with a value in the element selectorDetailsExamples: When the host hovers the mouse over the "chat delete icon" with the placeholder "MESSAGE:Hello All" When I hover the mouse over the "chat delete icon" with the placeholder "MESSAGE:Hi All" Method: stepHoverOverTheElement(scenarioWorld: ScenarioWorld, selectorName: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (enters|enter) the "<textToEnter>" text in the "<elementSelectorName>" | Enter the text in an input fieldDetailsExamples: When the host enters the "John Bond" text in the "username input field" When I enter the "Meeting" text in the "meetingname input field" Method: stepEnterTextInInputField(scenarioWorld: ScenarioWorld, selectorName: string, inputText: string): Promise<void> |
| When (the <actorName>|I) (clears|clear) the text from the "<elementSelectorName>" | Clears the text from an input fieldDetailsExamples: When the host clears the text from the "username input field" When I clear the text from the "meetingname input field" Method: stepClearTextFromInputField(scenarioWorld: ScenarioWorld, selectorName: string): Promise<void> |
| When (the <actorName>|I) (presses|press) the "<key>" key in the "<elementSelectorName>" | Focuses the element and presses a combination of the keys.DetailsExamples: When the host presses the "Enter" key in the "username input field" When I press the "Enter" key in the "chat input" Method: stepPressKey(scenarioWorld: ScenarioWorld, selectorName: string, key: string): Promise<void> |
| When (the <actorName>|I) (enters|enter) the "<textToEnter>" text in the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Enter the text in an input field by replacing the placeholder name with a valueDetailsExamples: When the host enters the "John Bond" text in the "username input field" with the placeholder "SECTION:admin" When I enter the "Meeting" text in the "meetingname input field with the placeholder "DAY:Monday" Method: stepEnterTextInInputField(scenarioWorld: ScenarioWorld, selectorName: string, inputText: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (clears|clear) the text from the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Clears the text from an input field by replacing the placeholder name with a valueDetailsExamples: When the host clears the text from the "username input field" with the placeholder "SECTION:admin" When I clear the text from the "meetingname input field" with the placeholder "DAY:Monday" Method: stepClearTextFromInputField(scenarioWorld: ScenarioWorld, selectorName: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (presses|press) the "<key>" key in the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Focuses the element and presses a combination of the keys by replacing the placeholder name with a value.DetailsExamples: When the host presses the "Enter" key in the "username input field" with the placeholder "SECTION:admin" When I press the "Enter" key in the "chat input" with the placeholder "INDEX:2" Method: stepPressKey(scenarioWorld: ScenarioWorld, selectorName: string, key: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (add|adds) the below JavaScript to the page """ <Java Script Code> """ |
Adds a JavaScript into the pageDetailsExamples: When the host adds the below JavaScript to the page """ const getStats = async () => { const source = mView.getRTCPeerConnection() const reports = await source.getStats(null) return reports } """ Method: stepAddJavaScriptToPage(scenarioWorld: ScenarioWorld, javaScript: string): Promise<ElementHandle> |
| When (the <actorName>|I) (add|adds) the "<JavaScriptFile>" JavaScript file to the page | Adds a JavaScript file into the pageDetailsExamples: When the host adds the "resources/js/viewer.js" JavaScript file to the page Method: stepAddJavaScriptFileToPage(scenarioWorld: ScenarioWorld, javaScriptFile: string): Promise<ElementHandle> |
| When (the <actorName>|I) (execute|executes|run|runs) the "<JavaScript>" JavaScript (function|command) on the page | Executes a JavaScript function|command on the pageDetailsExamples: When the host executes the "getVideoPixelSums()" JavaScript function on the page When the host runs the "window.publish.isActive()" JavaScript function on the page Method: stepExecuteJavaScriptOnPage(scenarioWorld: ScenarioWorld, javaScript: string): Promise<unknown> |
| When (the <actorName>|I) press "<KEY>" key | Press keyboard keys on the pageDetailsExamples: When the host press the "Escape" key When I press the "Shift+A" key Method: stepPressKeyboardKeysOnThePage(scenarioWorld: ScenarioWorld, key: string): Promise<void> |
| When (the <actorName>|I) (refresh|refreshes) the page | Refresh the pageDetailsExamples: When the host refreshes the page When I refresh the page Method: stepRefreshThePage(scenarioWorld: ScenarioWorld): Promise<void> |
| When (the <actorName>|I) switch to the "<appName>" app | Switch to another page when multiple pages are openedDetailsExamples: When the host switch to the "events" app When I switch to the "events" app Method: stepSwitchToPage(scenarioWorld: ScenarioWorld, appName: string): Promise<void> |
| When (the <actorName>|I)? (store|stores) the page url as a "<VARIABLENAME>" variable in the (local|global) data store | Stores the page url in the local or global data store with the given variable nameDetailsExamples: When the host stores the page url as a "BASE_APP_URL" variable in the local data store When store the page url as a "BASE_APP_URL" variable in the local data store Method: stepStorePageURL(scenarioWorld: ScenarioWorld, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName>|I)? (store|stores) the page url as a "<VARIABLENAME>" in the (environment) variable | Stores the page url in the environment with the given variable nameDetailsExamples: When the host stores the page url as a "BASE_APP_URL" in the environment variable When store the page url as a "BASE_APP_URL" in the environment variable Method: stepStorePageURL(scenarioWorld: ScenarioWorld, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName>|I) (switch|switches) to the "<tabName>" (tab|page) | Switch to another tab using the name when opened from default pageDetailsExamples: When the host switches to the "Broadcast" tab When I switch to the "Live Viewer" tab Method: stepSwitchToTabUsingName(scenarioWorld: ScenarioWorld, tabName: string): Promise<void> |
| When (the <actorName>|I) (switch|switches) to the "<tabIndex>" (st|nd|rd|th) (tab|page) | Switch to another tab using the index when opened from default pageDetailsExamples: When the host switches to the "2" nd tab When I switch to the "3" rd tab Method: stepSwitchToTabUsingIndex(scenarioWorld: ScenarioWorld, tabIndex: number): Promise<void> |
| When (the <actorName>|I) (store|stores|save|saves) the auth state of "<userName>" user | Stores the authenication state of the logged in applicaton and can be used to skip loginDetailsExamples: When the host stores the auth state of "admin" user When I save the auth state of "approval" user Method: stepStoreAuthState(scenarioWorld: ScenarioWorld, user: string): Promise<void> |
| When (the <actorName>|I) (get|gets) the ip address of the client machine | Get the IP address of the client machine where the page is openedDetailsExamples: When the host gets the ip address of the client machine When I get the ip address of the client machine Method: stepGetClientIPAddress(scenarioWorld: ScenarioWorld): Promise<string> |
| When (the <actorName>|I) (scroll|scrolls) to the (top|bottom) of page | Scroll to the top or bottom of the pageDetailsExamples: When the host scrolls to the top of page When I scroll to the bottom of page Method: stepScrollToTopOrBottomOfPage(scenarioWorld: ScenarioWorld, move: string): Promise<void> |
| When (the <actorName>|I) (store|stores) the "<elementSelectorName>" text as a "<variableName>" variable in the (local|global) data store | Read the element text and store in the local or global data storeDetailsExamples: When the host stores the "viewer link" text as a "VIEWER_URL" variable in the local data store When I store the "timer" text as a "TIMER_VALUE" variable in the global data store Method: stepStoreElementText(scenarioWorld: ScenarioWorld, selectorName: string, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName>|I) (store|stores) the "<elementSelectorName>" value as a "<variableName>" variable in the (local|global) data store | Read the element value and store in the local or global data storeDetailsExamples: When the host store the "meetingname input field" value as a "MEETING_NAME" variable in the local data store When I store the "username input field" value as a "USER_NAME" variable in the global data store Method: stepStoreElementValue(scenarioWorld: ScenarioWorld, selectorName: string, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName>|I) (store|stores) the "<elementSelectorName>" text as a "<variableName>" in the environment variable | Read the element text and store in the environment variableDetailsExamples: When the host store the "viewer link" text as a "VIEWER_URL" in the environment variable When I store the "timer" text as a "TIMER_VALUE" in the environment variable Method: stepStoreElementText(scenarioWorld: ScenarioWorld, selectorName: string, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName>/I) (store|stores) the "<elementSelectorName>" value as a "<variableName>" in the environment variable | Read the element value and store in the environment variableDetailsExamples: When the host store the "meetingname input field" value as a "MEETING_NAME" in the environment variable When I store the "username input field" value as a "USER_NAME" in the environment variable Method: stepStoreElementValue(scenarioWorld: ScenarioWorld, selectorName: string, dataStoreType: string, variableName: string): Promise<void> |
| When (the <actorName>|I) (get|gets|read|reads) the "<elementSelectorName>" text | Read the element text and return element textDetailsExamples: When the host reads the "viewer link" text Method: stepGetElementText(scenarioWorld: ScenarioWorld, selectorName: string): Promise<string | null> |
| When (the <actorName>|I) (get|gets|read|reads) the "<elementSelectorName>" value | Read the element value and return element valueDetailsExamples: When the host reads the "username input" value Method: stepGetElementValue(scenarioWorld: ScenarioWorld, selectorName: string): Promise<string | null> |
| When (the <actorName>|I) (get|gets|read|reads) the "<elementSelectorName>" count | Get the element count and return element countDetailsExamples: When the host gets the "blogs link" count Method: stepGetElementCount(scenarioWorld: ScenarioWorld, selectorName: string): Promise<number> |
| is "<elementSelectorName>" <expectedElementState> | Get the element state and return element stateDetailsExamples: is "blog link" displayed Method: stepGetElementState(scenarioWorld: ScenarioWorld, selectorName: string, state: string): Promise<boolean> |
| When (the <actorName>|I) (get|gets|read|reads) the "<elementSelectorName>" table data | Get the table dataDetailsExamples: When the host gets the "ingest stats" table data Method: stepGetElementTableData(scenarioWorld: ScenarioWorld, selectorName: string): Promise<string[][]> |
| When (the <actorName>|I) (get|gets|read|reads) the "<attributeName>" attribute value of "<elementSelectorName>" | Read the element attribute value and return attribute valueDetailsExamples: When the host reads thereads the "aria-checked" attribute value of "audio input" Method: stepGetElementAttribute(scenarioWorld: ScenarioWorld, selectorName: string, attributeName: string): Promise<string | null> |
| When (the <actorName>|I) (get|gets|read|reads) the page URL | Read the page URL and return URLDetailsExamples: When the host reads the page URL Method: stepGetPageURL(scenarioWorld: ScenarioWorld): Promise<string> |
| When (the <actorName>|I) (get|gets|read|reads) the page title | Read the page title and return titleDetailsExamples: When the host reads the page title Method: stepGetPageTitle(scenarioWorld: ScenarioWorld): Promise<string> |
| When (the <actorName>|I) (get|gets|read|reads) the selected option from "<elementSelectorName>" | Read the selected option from dropdown and returns a first selected itemDetailsExamples: When the host reads the selected option from "country dropdown" Method: stepGetSelectedOptionFromDropdown(scenarioWorld: ScenarioWorld, selectorName: string): Promise<string> |
| When (the <actorName>|I) (get|gets|read|reads) the selected options from "<elementSelectorName>" | Read the selected options from dropdown and returns a list of selected optionsDetailsExamples: When the host reads the selected options from "country dropdown" Method: stepGetSelectedOptionsFromDropdown(scenarioWorld: ScenarioWorld, selectorName: string): Promise<string[]> |
| When (the <actorName>|I) (get|gets|read|reads) the "<elementSelectorName>" inner HTML | Read the element inner HTML and return element inner HTMLDetailsExamples: When the host reads the "viewer text" inner HTML Method: stepGetElementInnerHTML(scenarioWorld: ScenarioWorld, selectorName: string): Promise<string | null> |
| When (the <actorName>|I) (take|takes) the screenshot of the "<elementSelectorName>" and save it with the name "<fileName>" | Take a screenshot of the element and store itDetailsExamples: When the host takes the screenshot of the "video tile" and save it with the name "host_video_tile" Method: stepTakeScreenOfElement(scenarioWorld: ScenarioWorld, selectorName: string, imgName: string): Promise<void> |
| When (the <actorName>|I) (take|takes) the screenshot of the "<elementSelectorName>" with the mask "<elementSelectorName>" and save it with the name "<fileName>" | Take the screenshot of the element by masking some elements by pink box and store itDetailsExamples: When the host takes the screenshot of the "video tile" with the mask "speaking indicator icon" and save it with the name "host_video_tile" Method: stepTakeScreenOfElement(scenarioWorld: ScenarioWorld, selectorName: string, imgName: string, {maskSelectorNames: string}): Promise<void> |
| When (the <actorName>|I) (take|takes) the screenshot of the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" and save it with the name "<fileName>" | Take a screenshot of the element and store it by replacing the placeholder name with a valueDetailsExamples: When the host takes the screenshot of the "video tile" with the placeholder "INDEX:1" and save it with the name "host_video_tile" Method: stepTakeScreenOfElement(scenarioWorld: ScenarioWorld, selectorName: string, imgName: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (take|takes) the screenshot of the "<elementSelectorName>" with the mask "<elementSelectorName>" and placeholder "<placeHolderName:placeHolderValue>" and save it with the name "<fileName>" | Take the screenshot of the element by masking some elements by pink box and store it by replacing the placeholder name with a valueDetailsExamples: When the host takes the screenshot of the "video tile" with the mask "speaking indicator icon" and placeholder "INDEX:1" and save it with the name "host_video_tile" Method: stepTakeScreenOfElement(scenarioWorld: ScenarioWorld, selectorName: string, imgName: string, {maskSelectorNames: string, placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (select|selects) the option with the (value|label) "<option>" from the "<elementSelectorName>" | Select the option from the select dropdown using value or labelDetailsExamples: When the host selects the option with the label "Australia" from the "country dropdown" When I select the option with the value "NSW" from the "state dropdown" Method: stepSelectOption(scenarioWorld: ScenarioWorld, selectorName: string, optionToSelect: string, optionType: string): Promise<void> |
| When (the <actorName>|I) (select|selects) the "<index>" (?:st|nd|rd|th) option from the "<elementSelectorName>" | Select the option from the select dropdown based on indexDetailsExamples: When the host selects the "2" nd option from the "country dropdown" When I select the "1" st option from the "state dropdown" Method: stepSelectOptionUsingIndex(scenarioWorld: ScenarioWorld, selectorName: string, index: number): Promise<void> |
| When (the <actorName>|I) (select|selects) the option with the (value|label) "<option>" from the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Select the option from the select dropdown using value or label by replacing the placeholder name value pair in the locatorDetailsExamples: When the host selects the option with the label "Australia" from the "country dropdown" with the placeholder "SECTION:OriginCountry" When I select the option with the value "NSW" from the "state dropdown" with the placeholder "SECTION:OriginCountry" Method: stepSelectOption(scenarioWorld: ScenarioWorld, selectorName: string, optionToSelect: string, optionType: string, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (select|selects) the "<index>" (?:st|nd|rd|th) option from the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" | Select the option from the select dropdown based on index by replacing the placeholder name value pair in the locatorDetailsExamples: When the host selects the "2" nd option from the "country dropdown" with the placeholder "SECTION:OriginCountry" When I select the "1" st option from the "state dropdown" with the placeholder "SECTION:OriginCountry" Method: stepSelectOptionUsingIndex(scenarioWorld: ScenarioWorld, selectorName: string, index: number, options: {placeholderPair: string}): Promise<void> |
| When (the <actorName>|I) (wait|waits) for "<secondsToWait>" seconds | Wait for given secondsDetailsExamples: When the host waits for "10" seconds Method: stepWaitForSeconds(seconds: number): Promise<void> |
| When (the <actorName>|I) (wait|waits) for "<minutesToWait>" minutes | Wait for the given minutesDetailsExamples: When the host waits for "2" minutes Method: stepWaitForSeconds(seconds: number): Promise<void> |
| When (the <actorName>|I) (wait|waits) for "<elementSelectorName>" to be <expectedElementState> | Wait for element to be displayed | visible | invisible | hidden | enabled | disabled | editable | checked | selected |unchecked | unselected with default timeout of 20 sec, this step will return true if element state is satisfied otherrwise falseDetailsExamples: When the host waits for "icon" to be visible When the host waits for "icon" to be hidden Method: stepWaitForElement(scenarioWorld: ScenarioWorld, selectorName: string, state: string): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<<elementSelectorName>>" to be <expectedElementState> in "<timeout>" seconds | Wait for element to be displayed | visible | invisible | hidden | enabled | disabled | editable | checked | selected | unchecked | unselected in the given timeout seconds, this step will return true if element state is satisfied otherrwise falseDetailsExamples: When the host waits for "icon" to be visible in "10" seconds When the host waits for "icon" to be hidden in "5" seconds Method: stepWaitForElement(scenarioWorld: ScenarioWorld, selectorName: string, state: string, timeoutSec: number): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for the "(networkidle|domcontentloaded|load)" load state | Wait for page until the specified load state is firedDetailsExamples: When the host waits for "networkidle" load state When the host waits for "domcontentloaded" load state Method: stepWaitForLoadState(scenarioWorld: ScenarioWorld, loadState: string): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<elementSelectorName>" text to be <expectedElementText> | Wait for element text to be expected text with default timeout of 20 sec, this step will return true if element text is matched otherrwise falseDetailsExamples: When the host waits for "state" text to be "Active" Method: stepWaitForElementText(scenarioWorld: ScenarioWorld, selectorName: string, expectedText: string): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<elementSelectorName>" text to be <expectedElementText> in "<timeout>" seconds | Wait for element text to be expected text in the given timeout seconds, this step will return true if element text is matched otherrwise falseDetailsExamples: When the host waits for "state" text to be "Active" in "10" seconds Method: stepWaitForElementText(scenarioWorld: ScenarioWorld, selectorName: string, expectedText: string, timeoutSec: number): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<elementSelectorName>" value to be <expectedElementValue> | Wait for element value to be expected value with default timeout of 20 sec, this step will return true if element value is matched otherrwise falseDetailsExamples: When the host waits for "status" value to be "Active" Method: stepWaitForElementValue(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<elementSelectorName>" value to be <expectedElementValue> in "<timeout>" seconds | Wait for element value to be expected value in the given timeout seconds, this step will return true if element value is matched otherrwise falseDetailsExamples: When the host waits for "status" value to be "Active" in "10" seconds Method: stepWaitForElementValue(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string, timeoutSec: number): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<JavaScript>" JavaScript (function|command) result to be <expectedText> | Wait for JS function result to be equal to expected result with default timeout of 20 sec, this step will return true if expected result is matched otherrwise falseDetailsExamples: When the host waits for "window.millicastPublish.isActive()" JavaScript function result to be true When the host waits for "window.millicastPublish.connectedUser" JavaScript function result to be 2 When the host waits for "window.millicastPublish.state" JavaScript function result to be "connected" Method: stepWaitForJSCallResult(scenarioWorld: ScenarioWorld, javaScript: string, expectedResult: string): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<JavaScript>" JavaScript (function|command) result to be <expectedText> in "<timeout>" seconds | Wait for JS function result to be equal to expected result in the given timeout seconds, this step will return true if expected result is matched otherrwise falseDetailsExamples: When the host waits for "window.millicastPublish.isActive()" JavaScript function result to be true in "3" seconds When the host waits for "window.millicastPublish.connectedUser" JavaScript function result to be 2 in "3" seconds When the host waits for "window.millicastPublish.state" JavaScript function result to be "connected" in "3" seconds Method: stepWaitForJSCallResult(scenarioWorld: ScenarioWorld, javaScript: string, expectedResult: string, timeoutSec: number): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<JavaScript>" JavaScript (function|command) result to match <expectedRegEx> | Wait for JS function result match to expected regex with default timeout of 20 sec, this step will return true if expected regex is matched otherrwise falseDetailsExamples: When the host waits for "window.millicastPublish.connectedUser" JavaScript function result to match "^[0-9]+$" When the host waits for "window.millicastPublish.error" JavaScript function result to match "disconnected.*invalid codec" Method: stepWaitForJSCallResultMatch(scenarioWorld: ScenarioWorld, javaScript: string, expectedRegex: string): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<JavaScript>" JavaScript (function|command) result to match <expectedRegEx> in "<timeout>" seconds | Wait for JS function result match to expected regex in the given timeout seconds, this step will return true if expected regex is matched otherrwise falseDetailsExamples: When the host waits for "window.millicastPublish.connectedUser" JavaScript function result to match "^[0-9]+$" in "<timeout>" seconds When the host waits for "window.millicastPublish.error" JavaScript function result to match "disconnected.*invalid codec" in "<timeout>" seconds Method: stepWaitForJSCallResultMatch(scenarioWorld: ScenarioWorld, javaScript: string, expectedRegex: string, timeoutSec: number): Promise<boolean> |
| When (the <actorName>|I) (wait|waits) for "<JavaScript>" JavaScript (function|command) json result to be <expectedJsonResult> | Wait for JS function json result to be equal to expected result with default timeout of 20 sec, this step will return true if expected result is matched otherrwise falseDetailsExamples: Method: stepWaitForJSCallJSONResult(scenarioWorld: ScenarioWorld, javaScript: string, expectedJsonResult: string): Promise<boolean> |
Then steps
| Step | Summary |
|---|---|
| Then the clipboard text should( not)? be equal to "<expectedText>" | Verify the clipboard textDetailsExamples: Then the clipboard text should be equal to "http://localhost:3000/meet/" Method: stepVerifyClipboardText(scenarioWorld: ScenarioWorld, expectedText: string, options: {not: boolean}): Promise<boolean> |
| Then the clipboard text should( not)? be equal to the stored "<variabeName>" variable from the (local|global) data store | Verify the clipboard text to the stored variable value from the (local|global) data storeDetailsExamples: Then the clipboard text should be equal to the stored "HOST_LINK" variable from the local data store Method: stepVerifyClipboardTextFromDataStore(scenarioWorld: ScenarioWorld, dataStoreType: string, variableName: string, options: {not: boolean}): Promise<boolean> |
| Then the number of "<elementSelectorName>" count should( not)? be "<expectedCount>" | Verify the number of elementsDetailsExamples: Then the number of "input field" count should be "2" Method: stepVerifyElementCount(scenarioWorld: ScenarioWorld, selectorName: string, expectedCount: string, options: {not: boolean}): Promise<boolean> |
| Then the number of "<elementSelectorName>" count should( not)? be less than "<expectedCount>" | Verify the number of elements are less than expected countDetailsExamples: Then the number of "input field" count should be less than "2" Method: stepVerifyElementCountLessThan(scenarioWorld: ScenarioWorld, selectorName: string, expectedCount: string, options: {not: boolean}): Promise<boolean> |
| Then the number of "<elementSelectorName>" count should( not)? be greater than "<expectedCount>" | Verify the number of elements are greater than expected countDetailsExamples: Then the number of "input field" count should be greater than "2" Method: stepVerifyElementCountGreaterThan(scenarioWorld: ScenarioWorld, selectorName: string, expectedCount: string, options: {not: boolean}): Promise<boolean> |
| Then the number of "<elementSelectorName>" count should( not)? be less than equal to "<expectedCount>" | Verify the number of elements are less than equal to expected countDetailsExamples: Then the number of "input field" count should be less than equal to "2" Method: stepVerifyElementCountLessThanEqualTo(scenarioWorld: ScenarioWorld, selectorName: string, expectedCount: string, options: {not: boolean}): Promise<boolean> |
| Then the number of "<elementSelectorName>" count should( not)? be greater than equal to "<expectedCount>" | Verify the number of elements are greater than equal to expected countDetailsExamples: Then the number of "input field" count should be greater than equal to "2" Method: stepVerifyElementCountGreaterThanEqualTo(scenarioWorld: ScenarioWorld, selectorName: string, expectedCount: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" should( not)? be <expectedElementState> | Verify element state such as displayed | visible | invisible | hidden | enabled | disabled | editable | checked | selected | unchecked | unselectedDetailsExamples: Then the "username input field" should be displayed Then the "next button" should be enabled Method: stepVerifyElementState(scenarioWorld: ScenarioWorld, selectorName: string, state: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" should( not)? be <expectedElementState>|<expectedElementState> | Verify element state such as displayed | visible | invisible | hidden | enabled | disabled | editable | checked | selected | unchecked | unselectedDetailsExamples: Then the "username input field" should be displayed|enabled|editable Then the "next button" should be displayed|enabled Method: stepVerifyElementState(scenarioWorld: ScenarioWorld, selectorName: string, state: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" should( not)? be <expectedElementState> | Verify element state such as displayed | visible | invisible | hidden | enabled | disabled | editable | checked | selected | unchecked | unselected by replacing placeholder name with value in the element selectorDetailsExamples: Then the "video tile" with the placeholder "NAME:John" should be displayed Then the "video tile" with the placeholder "NAME:Jony" should not be displayed Method: stepVerifyElementState(scenarioWorld: ScenarioWorld, selectorName: string, state: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" with the placeholder "<placeHolderName:placeHolderValue>" should( not)? be <expectedElementState>|<expectedElementState> | Verify element state such as displayed | visible | invisible | hidden | enabled | disabled | editable | checked | selected | unchecked | unselected by replacing placeholder name with value in the element selectorDetailsExamples: Then the "video tile" with the placeholder "NAME:John" should be displayed|enabled Then the "video tile" with the placeholder "NAME:Jony" should not be displayed|enabled Method: stepVerifyElementState(scenarioWorld: ScenarioWorld, selectorName: string, state: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text should( not)? be "<expectedText>" | Verify element textDetailsExamples: Then the "meeting name" text should be "All-Hands" Then the "timer" text should not be "0000" Method: stepVerifyElementText(scenarioWorld: ScenarioWorld, selectorName: string, expectedText: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text should( not)? contain "<expectedText>" | Verify element contains textDetailsExamples: Then the "app version" text should contain "SDK" Then the "app version" text should not contain "RTS" Method: stepVerifyElementContainText(scenarioWorld: ScenarioWorld, selectorName: string, expectedText: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text should( not)? match "<expectedTextRegEx>" | Verify element match text using regexDetailsExamples: Then the "timer" text should match "^0000$" Then the "timer" text should not contain "^0000$" Method: stepVerifyElementMatchText(scenarioWorld: ScenarioWorld, selectorName: string, expectedText: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text with the placeholder "<placeHolderName:placeHolderValue>" should( not)? be "<expectedText>" | Verify element text by replacing placeholder name with value in the element selectorDetailsExamples: Then the "host video view username" text with the placeholder "NAME:John" should be "John Bond" Then the "host video view username" text with the placeholder "NAME:John" should not be "John Board" Method: stepVerifyElementText(scenarioWorld: ScenarioWorld, selectorName: string, expectedText: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text with the placeholder "<placeHolderName:placeHolderValue>" should( not)? contain "<expectedText>" | Verify element contains text by replacing placeholder name in the element selectorDetailsExamples: Then the "user id" text with the placeholder "NAME:Admin" should contain "John" Then the "user id" text with the placeholder "NAME:Admin" should not contain "" Method: stepVerifyElementContainText(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text with the placeholder "<placeHolderName:placeHolderValue>" should( not)? match "<expectedTextRegEx>" | Verify element match text using regex by replacing placeholder name in the element selectorDetailsExamples: Then the "token id" text with the placeholder "NAME:Admin" value should match "^d{7}$" Then the "timer" text with the placeholder "NAME:Admin" should not match "^0000$" Method: stepVerifyElementMatchText(scenarioWorld: ScenarioWorld, selectorName: string, expectedText: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" value should( not)? be "<expectedValue>" | Verify element valueDetailsExamples: Then the "username input field" value should be "John" Then the "username input field" value should not be "Jony" Method: stepVerifyElementValue(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" value should( not)? contain "<expectedValue>" | Verify element contains valueDetailsExamples: Then the "account id" value should contain "TfW" Then the "account id" value should not contain "RTS" Method: stepVerifyElementContainValue(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" value should( not)? match "<expectedTextRegEx>" | Verify element match value using regexDetailsExamples: Then the "token id" value should match "^d{7}$" Then the "timer" value should not match "^0000$" Method: stepVerifyElementMatchValue(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" value with the placeholder "<placeHolderName:placeHolderValue>" should( not)? contain "<expectedValue>" | Verify element contains value by replacing placeholder name in the element selectorDetailsExamples: Then the "user id" value with the placeholder "NAME:Admin" should contain "John" Then the "user id" value with the placeholder "NAME:Admin" should not contain "" Method: stepVerifyElementContainValue(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" value with the placeholder "<placeHolderName:placeHolderValue>" should( not)? match "<expectedTextRegEx>" | Verify element match value using regex by replacing placeholder name in the element selectorDetailsExamples: Then the "token id" value with the placeholder "NAME:Admin" should match "^d{7}$" Then the "timer" value with the placeholder "NAME:Admin" should not match "^0000$" Method: stepVerifyElementMatchValue(scenarioWorld: ScenarioWorld, selectorName: string, expectedValue: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" attribute "<attributeName>" value should( not)? be "<attributeValue>" | Verify element attribute valueDetailsExamples: Then the "user name input field" attribute "placeholder" value should be "Enter your name" Method: stepVerifyElementAttribute(scenarioWorld: ScenarioWorld, selectorName: string, attributeName: string, attributeValue: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" attribute "<attributeName>" value with the placeholder "<placeHolderName:placeHolderValue>" should( not)? be "<attributeValue>" | Verify element attribute value by replacing placeholder name with value in the element selectorDetailsExamples: Then the "presentation button svg" attribute "fill" value with the placeholder "USERNAME:Host User" should be "#FFFFFF" Method: stepVerifyElementAttribute(scenarioWorld: ScenarioWorld, selectorName: string, attributeName: string, attributeValue: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text should( not)? be equal to the "<VARIABLE_NAME>" variable from the (local|global) data store | Verify element text with the text stored in the local or global data storeDetailsExamples: Then the "invite cohosts link" text should be equal to the "EVENTS_CO_HOST_APP_URL" variable from the local data store Method: stepVerifyElementTextWithDataStore(scenarioWorld: ScenarioWorld, selectorName: string, dataStoreType: string, variableName: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text should( not)? be equal to the "<VARIABLE_NAME>" environment variable | Verify element text with the environment variableDetailsExamples: Then the "invite cohosts link" text should be equal to the "EVENTS_CO_HOST_APP_URL" environment variable Method: stepVerifyElementTextWithDataStore(scenarioWorld: ScenarioWorld, selectorName: string, dataStoreType: string, variableName: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" text should( not)? be equal to the copied clipboard text | Verify the element text with copied clipboard textDetailsExamples: Then the "viewer link" text should be equal to the copied clipboard text Method: stepVerifyElementTextWithClipboardText(scenarioWorld: ScenarioWorld, selectorName: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" selected option should( not)? be "<expectedValue>" | Verify selected options from the select dropdownDetailsExamples: Then the "country dropdown" selected option should be "Australia" Then the "country dropdown" selected options should be "Australia, New Zealand" Then the "country dropdown" selected option should not be "Australia" Method: stepVerifySelectedOptionsFromSelectDropdown(scenarioWorld: ScenarioWorld, selectorName: string, expectedOptions: string[], options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" should( not)? have "<expectedOptions>" options | Verify select dropdown has the exactly the specified optionsDetailsExamples: Then the "country dropdown" should have "Australia, New Zealand, India, Singapore" options Method: stepVerifyOptionsEqualsFromSelectDropdown(scenarioWorld: ScenarioWorld, selectorName: string, expectedOptions: string[], options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" should( not)? contain "<expectedOptions>" options | Verify select dropdown contains the specified optionsDetailsExamples: Then the "country dropdown" should contain "Australia, New Zealand" options Method: stepVerifyOptionsContainsFromSelectDropdown(scenarioWorld: ScenarioWorld, selectorName: string, expectedOptions: string[], options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" computed attribute "<attributeName>" value should( not)? be "<attributeValue>" | Verify element computed attribute valueDetailsExamples: Then the "stream status dot" computed attribute "background" value should be "0xFFFF00" Method: stepVerifyElementComputedAttribute(scenarioWorld: ScenarioWorld, selectorName: string, attributeName: string, attributeValue: string, options: {not: boolean}): Promise<boolean> |
| Then the "<elementSelectorName>" computed attribute "<attributeName>" value with the placeholder "<placeHolderName:placeHolderValue>" should( not)? be "<attributeValue>" | Verify element computed attribute value by replacing placeholder name with value in the element selectorDetailsExamples: Then the "stream status dot" computed attribute "height" value with the placeholder "USERNAME:Host User" should be "100px" Method: stepVerifyElementComputedAttribute(scenarioWorld: ScenarioWorld, selectorName: string, attributeName: string, attributeValue: string, options: {placeholderPair: string, not: boolean}): Promise<boolean> |
| Then the image "<image1>" should( not)? be equal to image "<image2>" | Verify that the two images are sameDetailsExamples: Then the image "<image1>" should be equal to image "<image2>" Then the image "<image1>" should not be equal to image "<image2>" Method: stepVerifyImage(scenarioWorld: ScenarioWorld, image1: string, image2: string, options: {not: boolean}): Promise<boolean> |
| Then the image "<image1>" should( not)? be equal to image "<image2>" with "<threshold>" threshold | Verify that the two images are same with a given threshold, pixelmatch comparison library is used to compare screenshots. threshold — Matching threshold, ranges from 0 to 1. Smaller values make the comparison more sensitive. 0.1 by default.DetailsExamples: Then the image "<image1>" should be equal to image "<image2>" with "0.3" threshold Then the image "<image1>" should not be equal to image "<image2>" with "0.1" threshold Method: stepVerifyImage(scenarioWorld: ScenarioWorld, image1: string, image2: string, options: {not: boolean, threshold: number}): Promise<boolean> |
| Then perform the visual validation with the name "<Name>" | Perform the visual validation using percyDetailsExamples: Then perform the visual validation with the name "Create-Token-Modal-Basic" Method: stepVisualValidation(scenarioWorld: ScenarioWorld, name: string): Promise<boolean> |
| Then perform the visual validation with the name "<Name>" with the options "<Options>" | Perform the visual validation using percy with optionsDetailsExamples: Then perform the visual validation with the name "Create-Token-Modal-Basic" with the options "{"enableLayout": true}" Method: stepVisualValidation(scenarioWorld: ScenarioWorld, name: string, options: string ): Promise<boolean> |
| Then the "<JavaScript>" JavaScript (function|command) result should be "<expectedText>" | Verify JS function resultDetailsExamples: Then the "window.millicastPublish.isActive()" JavaScript function result should be true Then the "window.millicastPublish.connectedUser" JavaScript function result should be 2 Then the "window.millicastPublish.state" JavaScript function result should be "connected" Method: stepVerifyJSCallResult(scenarioWorld: ScenarioWorld, javaScript: string, expectedResult: string): Promise<boolean> |
| Then the "<JavaScript>" JavaScript (function|command) result should match "<expectedTextRegEx>" | Verify JS function result using regexDetailsExamples: Then the "window.millicastPublish.error" JavaScript function result should match "unsupported data type" Method: stepVerifyJSCallResultMatch(scenarioWorld: ScenarioWorld, javaScript: string, expectedText: string): Promise<boolean> |
| Then the "<JavaScript>" JavaScript (function|command) json result should be "<expectedJsonResult>" | Verify JS function json resultDetailsExamples: Method: stepVerifyJSCallJSONResult(scenarioWorld: ScenarioWorld, javaScript: string, expectedJsonResult: string): Promise<boolean> |
| Then (the <actorName>|I) should be navigated to the "<pageName>" page | Verify that the user is navigated to another pageDetailsExamples: Then the host should be navigated to the "device-setup" page Then I should be navigated to the "rejoin-meeting" page Method: stepVerifyNavigateToPage(scenarioWorld: ScenarioWorld, pageName: string): Promise<boolean> |
| Then the page url should be "<URL>" | Verify the page urlDetailsExamples: Method: stepVerifyPageURL(scenarioWorld: ScenarioWorld, expectedURL: string, options: {not: boolean}): Promise<boolean> |
| Then the page title should( not)? be "<expectedTitle>" | Verify page titleDetailsExamples: Then the page title should be "Dolby.IO" Method: stepVerifyPageTitle(scenarioWorld: ScenarioWorld, expectedTitle: string, options: {not: boolean}): Promise<boolean> |
| Then the <ParameterName> value "<ActualValue>" should( not)? be equal to "<ExpectedValue>" | Compare two valuesDetailsExamples: Then the main stream video state value "4" should be equal to "4" Then the main stream video state value "4" should not be equal to "0" Method: stepVerifyValueEquals(actualValue: string, expectedValue: string, options: {not: boolean, parameterName: string}): void |
| Then the <ParameterName> value "<Actual>" should contain "<Expected>" | Verify if actuals value contains expected valueDetailsExamples: Then the stream name value "Web-RTC" should contain "Web" Method: stepVerifyValueContains(actualValue: string, expectedValue: string, options: {not: boolean, parameterName: string}): boolean |
| Then the <ParameterName> value "<Actual>" should match "<expectedTextRegEx>" | Verify if actuals value match expected regexDetailsExamples: Then the timer value "0000" should match "^0000$" Method: stepVerifyValueMatch(actualValue: string, expectedRegex: string, message?: string): boolean |
| Then the <ParameterName> value "<Actual>" should be greater than "<Expected>" | Verify if actuals value is greater than actual valueDetailsExamples: Then the viewer count value "50" should be greater than "30" Method: stepVerifyValueGreaterThan(actualValue: string, expectedValue: string, options: {not: boolean, parameterName: string}): boolean |
| Then the <ParameterName> value "<Actual>" should be less than "<Expected>" | Verify if actuals value is less than actual valueDetailsExamples: Then the viewer count value "20" should be less than "30" Method: stepVerifyValueLessThan(actualValue: string, expectedValue: string, options: {not: boolean, parameterName: string}): boolean |
| Then the <ParameterName> value "<Actual>" should be greater than equal to "<Expected>" | Verify if actuals value is greater than equal to actual valueDetailsExamples: Then the viewer count value "50" should be greater than equal to "30" Method: stepVerifyValueGreaterThanEqualTo(actualValue: string, expectedValue: string, options: {not: boolean, parameterName: string}): boolean |
| Then the <ParameterName> value "<Actual>" should be less than equal to "<Expected>" | Verify if actuals value is less than equal to actual valueDetailsExamples: Then the viewer count value "20" should be less than equal to "30" Method: stepVerifyValueLessThanEqualTo(actualValue: string, expectedValue: string, options: {not: boolean, parameterName: string}): boolean |
| Then the <ParameterName> value "<Actual>" should be less than equal to "<Expected>" | Verify if actual value is in range of expected value with the given thresholdDetailsExamples: Then the viewer count value "20" should be in range of "20" with threshold of "2" Method: stepVerifyValueInRangeWithThreshold(actualValue: string, expectedValue: string, threshold: string, options: {parameterName: string}): boolean |
| Then the <ParameterName> value "<Actual>" should be in range of "<ExpectedLowerBound>" and "<ExpectedUpperBound>" | Verify if actual value is in range of expected lower bound and uper bound valueDetailsExamples: Then the viewer count value "20" should be in range of "19" and "21" Method: stepVerifyValueInRangeWithValues(actualValue: string, expectedLowerBound: string, expectedUpperBound: string, options: {parameterName: string}): boolean |
| Then the <ParameterName> value "<Actual>" should contain in "<ExpectedList>" list | Verify if value is present in the listDetailsExamples: Then the cluster name value "SYD" should contain in "IND,AUS,SYD,BLR" list Method: stepVerifyArrayContains(actualValue: string, expectedList: string, options: {not: boolean, parameterName: string}): boolean |