codeceptjs 3.3.1 → 3.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +49 -0
- package/README.md +4 -25
- package/docs/api.md +4 -0
- package/docs/basics.md +2 -0
- package/docs/build/Appium.js +18 -28
- package/docs/build/JSONResponse.js +44 -3
- package/docs/build/Nightmare.js +53 -53
- package/docs/build/Playwright.js +95 -103
- package/docs/build/Protractor.js +66 -66
- package/docs/build/Puppeteer.js +74 -74
- package/docs/build/REST.js +8 -4
- package/docs/build/TestCafe.js +53 -53
- package/docs/build/WebDriver.js +84 -86
- package/docs/changelog.md +49 -0
- package/docs/helpers/Appium.md +212 -268
- package/docs/helpers/JSONResponse.md +24 -0
- package/docs/helpers/Nightmare.md +92 -141
- package/docs/helpers/Playwright.md +302 -413
- package/docs/helpers/Puppeteer.md +171 -231
- package/docs/helpers/REST.md +2 -0
- package/docs/helpers/TestCafe.md +125 -174
- package/docs/helpers/WebDriver.md +184 -247
- package/docs/plugins.md +41 -1
- package/docs/secrets.md +30 -0
- package/docs/webapi/amOnPage.mustache +1 -1
- package/docs/webapi/appendField.mustache +1 -1
- package/docs/webapi/attachFile.mustache +1 -1
- package/docs/webapi/checkOption.mustache +1 -1
- package/docs/webapi/clearCookie.mustache +1 -1
- package/docs/webapi/clearField.mustache +1 -1
- package/docs/webapi/click.mustache +1 -1
- package/docs/webapi/clickLink.mustache +1 -1
- package/docs/webapi/closeCurrentTab.mustache +1 -1
- package/docs/webapi/closeOtherTabs.mustache +1 -1
- package/docs/webapi/dontSee.mustache +1 -1
- package/docs/webapi/dontSeeCheckboxIsChecked.mustache +1 -1
- package/docs/webapi/dontSeeCookie.mustache +1 -1
- package/docs/webapi/dontSeeCurrentUrlEquals.mustache +1 -1
- package/docs/webapi/dontSeeElement.mustache +1 -1
- package/docs/webapi/dontSeeElementInDOM.mustache +1 -1
- package/docs/webapi/dontSeeInCurrentUrl.mustache +1 -1
- package/docs/webapi/dontSeeInField.mustache +1 -1
- package/docs/webapi/dontSeeInSource.mustache +1 -1
- package/docs/webapi/dontSeeInTitle.mustache +1 -1
- package/docs/webapi/doubleClick.mustache +1 -1
- package/docs/webapi/downloadFile.mustache +1 -1
- package/docs/webapi/dragAndDrop.mustache +1 -1
- package/docs/webapi/dragSlider.mustache +1 -1
- package/docs/webapi/executeAsyncScript.mustache +1 -1
- package/docs/webapi/executeScript.mustache +1 -1
- package/docs/webapi/fillField.mustache +1 -1
- package/docs/webapi/forceClick.mustache +1 -1
- package/docs/webapi/forceRightClick.mustache +1 -1
- package/docs/webapi/grabDataFromPerformanceTiming.mustache +1 -1
- package/docs/webapi/moveCursorTo.mustache +1 -1
- package/docs/webapi/openNewTab.mustache +1 -1
- package/docs/webapi/pressKey.mustache +1 -1
- package/docs/webapi/pressKeyDown.mustache +1 -1
- package/docs/webapi/pressKeyUp.mustache +1 -1
- package/docs/webapi/pressKeyWithKeyNormalization.mustache +1 -1
- package/docs/webapi/refreshPage.mustache +1 -1
- package/docs/webapi/resizeWindow.mustache +1 -1
- package/docs/webapi/rightClick.mustache +1 -1
- package/docs/webapi/saveElementScreenshot.mustache +1 -1
- package/docs/webapi/saveScreenshot.mustache +1 -1
- package/docs/webapi/say.mustache +1 -1
- package/docs/webapi/scrollIntoView.mustache +1 -1
- package/docs/webapi/scrollPageToBottom.mustache +1 -1
- package/docs/webapi/scrollPageToTop.mustache +1 -1
- package/docs/webapi/scrollTo.mustache +1 -1
- package/docs/webapi/see.mustache +1 -1
- package/docs/webapi/seeAttributesOnElements.mustache +1 -1
- package/docs/webapi/seeCheckboxIsChecked.mustache +1 -1
- package/docs/webapi/seeCookie.mustache +1 -1
- package/docs/webapi/seeCssPropertiesOnElements.mustache +1 -1
- package/docs/webapi/seeCurrentUrlEquals.mustache +1 -1
- package/docs/webapi/seeElement.mustache +1 -1
- package/docs/webapi/seeElementInDOM.mustache +1 -1
- package/docs/webapi/seeInCurrentUrl.mustache +1 -1
- package/docs/webapi/seeInField.mustache +1 -1
- package/docs/webapi/seeInPopup.mustache +1 -1
- package/docs/webapi/seeInSource.mustache +1 -1
- package/docs/webapi/seeInTitle.mustache +1 -1
- package/docs/webapi/seeNumberOfElements.mustache +1 -1
- package/docs/webapi/seeNumberOfVisibleElements.mustache +1 -1
- package/docs/webapi/seeTextEquals.mustache +1 -1
- package/docs/webapi/seeTitleEquals.mustache +1 -1
- package/docs/webapi/selectOption.mustache +1 -1
- package/docs/webapi/setCookie.mustache +1 -1
- package/docs/webapi/setGeoLocation.mustache +1 -1
- package/docs/webapi/switchTo.mustache +1 -1
- package/docs/webapi/switchToNextTab.mustache +1 -1
- package/docs/webapi/switchToPreviousTab.mustache +1 -1
- package/docs/webapi/type.mustache +1 -1
- package/docs/webapi/uncheckOption.mustache +1 -1
- package/docs/webapi/wait.mustache +1 -1
- package/docs/webapi/waitForClickable.mustache +1 -1
- package/docs/webapi/waitForDetached.mustache +1 -1
- package/docs/webapi/waitForElement.mustache +1 -1
- package/docs/webapi/waitForEnabled.mustache +1 -1
- package/docs/webapi/waitForFunction.mustache +1 -1
- package/docs/webapi/waitForInvisible.mustache +1 -1
- package/docs/webapi/waitForText.mustache +1 -1
- package/docs/webapi/waitForValue.mustache +1 -1
- package/docs/webapi/waitForVisible.mustache +1 -1
- package/docs/webapi/waitInUrl.mustache +1 -1
- package/docs/webapi/waitNumberOfVisibleElements.mustache +1 -1
- package/docs/webapi/waitToHide.mustache +1 -1
- package/docs/webapi/waitUrlEquals.mustache +1 -1
- package/lib/cli.js +1 -1
- package/lib/command/interactive.js +1 -1
- package/lib/command/run-workers.js +1 -1
- package/lib/command/workers/runTests.js +15 -0
- package/lib/helper/Appium.js +0 -10
- package/lib/helper/JSONResponse.js +44 -3
- package/lib/helper/Playwright.js +24 -32
- package/lib/helper/REST.js +8 -4
- package/lib/helper/WebDriver.js +5 -7
- package/lib/output.js +4 -0
- package/lib/plugin/customLocator.js +50 -3
- package/lib/plugin/retryFailedStep.js +1 -1
- package/lib/plugin/retryTo.js +1 -8
- package/lib/secret.js +30 -0
- package/lib/step.js +1 -1
- package/package.json +4 -4
- package/typings/types.d.ts +1016 -520
package/docs/plugins.md
CHANGED
|
@@ -512,6 +512,46 @@ I.seeElement('=user'); // matches => [data-qa=user]
|
|
|
512
512
|
I.click('=sign-up'); // matches => [data-qa=sign-up]
|
|
513
513
|
```
|
|
514
514
|
|
|
515
|
+
Using `data-qa` OR `data-test` attribute with `=` prefix:
|
|
516
|
+
|
|
517
|
+
```js
|
|
518
|
+
// in codecept.conf.js
|
|
519
|
+
plugins: {
|
|
520
|
+
customLocator: {
|
|
521
|
+
enabled: true,
|
|
522
|
+
prefix: '=',
|
|
523
|
+
attribute: ['data-qa', 'data-test'],
|
|
524
|
+
strategy: 'xpath'
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
```
|
|
528
|
+
|
|
529
|
+
In a test:
|
|
530
|
+
|
|
531
|
+
```js
|
|
532
|
+
I.seeElement('=user'); // matches => //*[@data-qa=user or @data-test=user]
|
|
533
|
+
I.click('=sign-up'); // matches => //*[data-qa=sign-up or @data-test=sign-up]
|
|
534
|
+
```
|
|
535
|
+
|
|
536
|
+
```js
|
|
537
|
+
// in codecept.conf.js
|
|
538
|
+
plugins: {
|
|
539
|
+
customLocator: {
|
|
540
|
+
enabled: true,
|
|
541
|
+
prefix: '=',
|
|
542
|
+
attribute: ['data-qa', 'data-test'],
|
|
543
|
+
strategy: 'css'
|
|
544
|
+
}
|
|
545
|
+
}
|
|
546
|
+
```
|
|
547
|
+
|
|
548
|
+
In a test:
|
|
549
|
+
|
|
550
|
+
```js
|
|
551
|
+
I.seeElement('=user'); // matches => [data-qa=user],[data-test=user]
|
|
552
|
+
I.click('=sign-up'); // matches => [data-qa=sign-up],[data-test=sign-up]
|
|
553
|
+
```
|
|
554
|
+
|
|
515
555
|
### Parameters
|
|
516
556
|
|
|
517
557
|
- `config`
|
|
@@ -682,7 +722,7 @@ Run tests with plugin enabled:
|
|
|
682
722
|
plugins: {
|
|
683
723
|
retryFailedStep: {
|
|
684
724
|
enabled: true,
|
|
685
|
-
|
|
725
|
+
ignoredSteps: [
|
|
686
726
|
'scroll*', // ignore all scroll steps
|
|
687
727
|
/Cookie/, // ignore all steps with a Cookie in it (by regexp)
|
|
688
728
|
]
|
package/docs/secrets.md
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Secrets
|
|
2
|
+
|
|
3
|
+
It is possible to mask out sensitive data when passing it to steps. This is important when filling password fields, or sending secure keys to API endpoint.
|
|
4
|
+
|
|
5
|
+
Wrap data in `secret` function to mask sensitive values in output and logs.
|
|
6
|
+
|
|
7
|
+
For basic string `secret` just wrap a value into a string:
|
|
8
|
+
|
|
9
|
+
```js
|
|
10
|
+
I.fillField('password', secret('123456'));
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
When executed it will be printed like this:
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
I fill field "password" "*****"
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
For an object, which can be a payload to POST request, specify which fields should be masked:
|
|
20
|
+
|
|
21
|
+
```js
|
|
22
|
+
I.sendPostRequest('/login', secret({
|
|
23
|
+
name: 'davert',
|
|
24
|
+
password: '123456'
|
|
25
|
+
}, 'password'))
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
The object created from `secret` is as Proxy to the object passed in. When printed password will be replaced with ****.
|
|
29
|
+
|
|
30
|
+
> ⚠️ Only direct properties of the object can be masked via `secret`
|
|
@@ -6,4 +6,4 @@ I.appendField('#myTextField', 'appended');
|
|
|
6
6
|
```
|
|
7
7
|
@param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator
|
|
8
8
|
@param {string} value text value to append.
|
|
9
|
-
|
|
9
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -9,4 +9,4 @@ I.attachFile('form input[name=avatar]', 'data/avatar.jpg');
|
|
|
9
9
|
|
|
10
10
|
@param {CodeceptJS.LocatorOrString} locator field located by label|name|CSS|XPath|strict locator.
|
|
11
11
|
@param {string} pathToFile local file path relative to codecept.json config file.
|
|
12
|
-
|
|
12
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -10,4 +10,4 @@ I.checkOption('agree', '//form');
|
|
|
10
10
|
```
|
|
11
11
|
@param {CodeceptJS.LocatorOrString} field checkbox located by label | name | CSS | XPath | strict locator.
|
|
12
12
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS | XPath | strict locator.
|
|
13
|
-
|
|
13
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -22,4 +22,4 @@ I.click({css: 'nav a.login'});
|
|
|
22
22
|
|
|
23
23
|
@param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
|
|
24
24
|
@param {?CodeceptJS.LocatorOrString | null} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
|
|
25
|
-
|
|
25
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -5,4 +5,4 @@ I.clickLink('Logout', '#nav');
|
|
|
5
5
|
```
|
|
6
6
|
@param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator
|
|
7
7
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator
|
|
8
|
-
|
|
8
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -8,4 +8,4 @@ I.dontSee('Login', '.nav'); // no login inside .nav element
|
|
|
8
8
|
|
|
9
9
|
@param {string} text which is not present.
|
|
10
10
|
@param {CodeceptJS.LocatorOrString} [context] (optional) element located by CSS|XPath|strict locator in which to perfrom search.
|
|
11
|
-
|
|
11
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -8,4 +8,4 @@ I.dontSeeInField({ css: 'form input.email' }, 'user@user.com'); // field by CSS
|
|
|
8
8
|
|
|
9
9
|
@param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
10
10
|
@param {string} value value to check.
|
|
11
|
-
|
|
11
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -10,4 +10,4 @@ I.doubleClick('.btn.edit');
|
|
|
10
10
|
|
|
11
11
|
@param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
|
|
12
12
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
|
|
13
|
-
|
|
13
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -9,4 +9,4 @@ I.downloadFile('td[class="text-right file-link"] a', 'thisIsCustomName');
|
|
|
9
9
|
|
|
10
10
|
@param {CodeceptJS.LocatorOrString} locator clickable link or button located by CSS|XPath locator.
|
|
11
11
|
@param {string} file custom file name.
|
|
12
|
-
|
|
12
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -6,4 +6,4 @@ I.dragAndDrop('#dragHandle', '#container');
|
|
|
6
6
|
|
|
7
7
|
@param {LocatorOrString} srcElement located by CSS|XPath|strict locator.
|
|
8
8
|
@param {LocatorOrString} destElement located by CSS|XPath|strict locator.
|
|
9
|
-
|
|
9
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -21,4 +21,4 @@ let val = await I.executeAsyncScript(function(url, done) {
|
|
|
21
21
|
|
|
22
22
|
@param {string|function} fn function to be executed in browser context.
|
|
23
23
|
@param {...any} args to be passed to function.
|
|
24
|
-
|
|
24
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -23,4 +23,4 @@ let date = await I.executeScript(function(el) {
|
|
|
23
23
|
|
|
24
24
|
@param {string|function} fn function to be executed in browser context.
|
|
25
25
|
@param {...any} args to be passed to function.
|
|
26
|
-
|
|
26
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -13,4 +13,4 @@ I.fillField({css: 'form#login input[name=username]'}, 'John');
|
|
|
13
13
|
```
|
|
14
14
|
@param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
15
15
|
@param {CodeceptJS.StringOrSecret} value text value to fill.
|
|
16
|
-
|
|
16
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -25,4 +25,4 @@ I.forceClick({css: 'nav a.login'});
|
|
|
25
25
|
|
|
26
26
|
@param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
|
|
27
27
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
|
|
28
|
-
|
|
28
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -15,4 +15,4 @@ I.forceRightClick('Menu');
|
|
|
15
15
|
|
|
16
16
|
@param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
|
|
17
17
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
|
|
18
|
-
|
|
18
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -9,4 +9,4 @@ I.moveCursorTo('#submit', 5,5);
|
|
|
9
9
|
@param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
|
|
10
10
|
@param {number} [offsetX=0] (optional, `0` by default) X-axis offset.
|
|
11
11
|
@param {number} [offsetY=0] (optional, `0` by default) Y-axis offset.
|
|
12
|
-
|
|
12
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -11,4 +11,4 @@ I.rightClick('Click me', '.context');
|
|
|
11
11
|
|
|
12
12
|
@param {CodeceptJS.LocatorOrString} locator clickable element located by CSS|XPath|strict locator.
|
|
13
13
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS|XPath|strict locator.
|
|
14
|
-
|
|
14
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -7,4 +7,4 @@ I.saveElementScreenshot(`#submit`,'debug.png');
|
|
|
7
7
|
|
|
8
8
|
@param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
|
|
9
9
|
@param {string} fileName file name to save.
|
|
10
|
-
|
|
10
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -9,4 +9,4 @@ I.saveScreenshot('debug.png', true) //resizes to available scrollHeight and scro
|
|
|
9
9
|
|
|
10
10
|
@param {string} fileName file name to save.
|
|
11
11
|
@param {boolean} [fullPage=false] (optional, `false` by default) flag to enable fullscreen screenshot mode.
|
|
12
|
-
|
|
12
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
package/docs/webapi/say.mustache
CHANGED
|
@@ -8,4 +8,4 @@ I.scrollIntoView('#submit', { behavior: "smooth", block: "center", inline: "cent
|
|
|
8
8
|
|
|
9
9
|
@param {LocatorOrString} locator located by CSS|XPath|strict locator.
|
|
10
10
|
@param {ScrollIntoViewOptions} scrollIntoViewOptions see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView.
|
|
11
|
-
|
|
11
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -9,4 +9,4 @@ I.scrollTo('#submit', 5, 5);
|
|
|
9
9
|
@param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
|
|
10
10
|
@param {number} [offsetX=0] (optional, `0` by default) X-axis offset.
|
|
11
11
|
@param {number} [offsetY=0] (optional, `0` by default) Y-axis offset.
|
|
12
|
-
|
|
12
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
package/docs/webapi/see.mustache
CHANGED
|
@@ -8,4 +8,4 @@ I.see('Register', {css: 'form.register'}); // use strict locator
|
|
|
8
8
|
```
|
|
9
9
|
@param {string} text expected on page.
|
|
10
10
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS|Xpath|strict locator in which to search for text.
|
|
11
|
-
|
|
11
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -6,4 +6,4 @@ I.seeAttributesOnElements('//form', { method: "post"});
|
|
|
6
6
|
|
|
7
7
|
@param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
|
|
8
8
|
@param {object} attributes attributes and their values to check.
|
|
9
|
-
|
|
9
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -6,4 +6,4 @@ I.seeCssPropertiesOnElements('h3', { 'font-weight': "bold"});
|
|
|
6
6
|
|
|
7
7
|
@param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
|
|
8
8
|
@param {object} cssProperties object with CSS properties and their values to check.
|
|
9
|
-
|
|
9
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -9,4 +9,4 @@ I.seeInField('#searchform input','Search');
|
|
|
9
9
|
```
|
|
10
10
|
@param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
11
11
|
@param {string} value value to check.
|
|
12
|
-
|
|
12
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -8,4 +8,4 @@ I.seeNumberOfElements('#submitBtn', 1);
|
|
|
8
8
|
|
|
9
9
|
@param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
|
|
10
10
|
@param {number} num number of elements.
|
|
11
|
-
|
|
11
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -7,4 +7,4 @@ I.seeNumberOfVisibleElements('.buttons', 3);
|
|
|
7
7
|
|
|
8
8
|
@param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
|
|
9
9
|
@param {number} num number of elements.
|
|
10
|
-
|
|
10
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -6,4 +6,4 @@ I.seeTextEquals('text', 'h1');
|
|
|
6
6
|
|
|
7
7
|
@param {string} text element value to check.
|
|
8
8
|
@param {CodeceptJS.LocatorOrString?} [context=null] element located by CSS|XPath|strict locator.
|
|
9
|
-
|
|
9
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -18,4 +18,4 @@ I.selectOption('Which OS do you use?', ['Android', 'iOS']);
|
|
|
18
18
|
```
|
|
19
19
|
@param {LocatorOrString} select field located by label|name|CSS|XPath|strict locator.
|
|
20
20
|
@param {string|Array<*>} option visible text or value of option.
|
|
21
|
-
|
|
21
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -6,4 +6,4 @@ I.switchTo(); // switch back to main page
|
|
|
6
6
|
```
|
|
7
7
|
|
|
8
8
|
@param {?CodeceptJS.LocatorOrString} [locator=null] (optional, `null` by default) element located by CSS|XPath|strict locator.
|
|
9
|
-
|
|
9
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|
|
@@ -10,4 +10,4 @@ I.uncheckOption('agree', '//form');
|
|
|
10
10
|
```
|
|
11
11
|
@param {CodeceptJS.LocatorOrString} field checkbox located by label | name | CSS | XPath | strict locator.
|
|
12
12
|
@param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS | XPath | strict locator.
|
|
13
|
-
|
|
13
|
+
[!] returns a _promise_ which is synchronized internally by recorder
|