codeceptjs 3.5.6 → 3.5.7-beta.1
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 +2950 -0
- package/docs/bdd.md +11 -7
- package/docs/build/ApiDataFactory.js +2 -1
- package/docs/build/Appium.js +25 -23
- package/docs/build/Expect.js +422 -0
- package/docs/build/Nightmare.js +53 -56
- package/docs/build/Playwright.js +166 -103
- package/docs/build/Protractor.js +66 -69
- package/docs/build/Puppeteer.js +79 -79
- package/docs/build/TestCafe.js +56 -55
- package/docs/build/WebDriver.js +81 -82
- package/docs/changelog.md +388 -1
- package/docs/commands.md +12 -0
- package/docs/community-helpers.md +8 -4
- package/docs/examples.md +8 -2
- package/docs/helpers/Appium.md +50 -32
- package/docs/helpers/Expect.md +275 -0
- package/docs/helpers/Nightmare.md +141 -94
- package/docs/helpers/Playwright.md +280 -211
- package/docs/helpers/Protractor.md +229 -169
- package/docs/helpers/Puppeteer.md +256 -185
- package/docs/helpers/TestCafe.md +201 -149
- package/docs/helpers/WebDriver.md +252 -178
- package/docs/mobile.md +17 -21
- package/docs/plugins.md +35 -1
- package/docs/webapi/amOnPage.mustache +1 -1
- package/docs/webapi/appendField.mustache +1 -1
- package/docs/webapi/attachFile.mustache +1 -1
- package/docs/webapi/blur.mustache +1 -0
- 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 +0 -2
- package/docs/webapi/executeScript.mustache +0 -2
- package/docs/webapi/fillField.mustache +1 -1
- package/docs/webapi/focus.mustache +1 -0
- package/docs/webapi/forceClick.mustache +1 -1
- package/docs/webapi/forceRightClick.mustache +1 -1
- package/docs/webapi/grabCookie.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/ai.js +12 -3
- package/lib/cli.js +3 -1
- package/lib/command/dryRun.js +2 -1
- package/lib/helper/ApiDataFactory.js +2 -1
- package/lib/helper/Appium.js +7 -5
- package/lib/helper/Expect.js +422 -0
- package/lib/helper/Playwright.js +91 -32
- package/lib/helper/Puppeteer.js +2 -2
- package/lib/html.js +3 -3
- package/lib/interfaces/gherkin.js +21 -2
- package/lib/output.js +1 -1
- package/lib/pause.js +6 -3
- package/lib/plugin/autoLogin.js +35 -3
- package/lib/plugin/heal.js +40 -7
- package/lib/recorder.js +12 -5
- package/package.json +15 -8
- package/translations/de-DE.js +5 -0
- package/translations/fr-FR.js +1 -0
- package/translations/it-IT.js +1 -0
- package/translations/ja-JP.js +5 -0
- package/translations/pl-PL.js +5 -0
- package/translations/pt-BR.js +1 -0
- package/translations/ru-RU.js +1 -0
- package/translations/zh-CN.js +5 -0
- package/translations/zh-TW.js +5 -0
- package/typings/promiseBasedTypes.d.ts +904 -862
- package/typings/types.d.ts +904 -845
package/docs/bdd.md
CHANGED
|
@@ -13,7 +13,7 @@ BDD was introduced by [Dan North](https://dannorth.net/introducing-bdd/). He des
|
|
|
13
13
|
|
|
14
14
|
> outside-in, pull-based, multiple-stakeholder, multiple-scale, high-automation, agile methodology. It describes a cycle of interactions with well-defined outputs, resulting in the delivery of working, tested software that matters.
|
|
15
15
|
|
|
16
|
-
BDD has its own evolution from the days it was born, started by replacing "test" to "should" in unit tests, and moving towards powerful tools like Cucumber and Behat, which made user stories (human
|
|
16
|
+
BDD has its own evolution from the days it was born, started by replacing "test" to "should" in unit tests, and moving towards powerful tools like Cucumber and Behat, which made user stories (human-readable text) to be executed as an acceptance test.
|
|
17
17
|
|
|
18
18
|
The idea of story BDD can be narrowed to:
|
|
19
19
|
|
|
@@ -32,7 +32,7 @@ With this procedure we also ensure that everyone in a team knows what has been d
|
|
|
32
32
|
|
|
33
33
|
### Ubiquitous Language
|
|
34
34
|
|
|
35
|
-
The ubiquitous language is always referred as *common* language. That is
|
|
35
|
+
The ubiquitous language is always referred as *common* language. That it is the main benefit. It is not a couple of our business specification's words, and not a couple of developer's technical terms. It is a common words and terms that can be understood by people for whom we are building the software and should be understood by developers. Establishing correct communication between this two groups people is vital for building successful project that will fit the domain and fulfill all business needs.
|
|
36
36
|
|
|
37
37
|
Each feature of a product should be born from a talk between
|
|
38
38
|
|
|
@@ -144,8 +144,8 @@ npx codeceptjs gherkin:snippets [--path=PATH] [--feature=PATH]
|
|
|
144
144
|
```
|
|
145
145
|
|
|
146
146
|
This will produce code templates for all undefined steps in the .feature files.
|
|
147
|
-
By default, it will scan all of the
|
|
148
|
-
The stub definitions by default will be placed into the first file specified in the gherkin.steps section of the config. However, you may also use `--path` to specify a specific file in which to place all undefined steps. This file must exist and be in the gherkin.steps array of the config.
|
|
147
|
+
By default, it will scan all of the `.feature` files specified in the `gherkin.features` section of the config and produce code templates for all undefined steps. If the `--feature` option is specified, it will scan the specified .feature file(s).
|
|
148
|
+
The stub definitions by default will be placed into the first file specified in the `gherkin.steps` section of the config. However, you may also use `--path` to specify a specific file in which to place all undefined steps. This file must exist and be in the `gherkin.steps array of the config.
|
|
149
149
|
Our next step will be to define those steps and transforming feature-file into a valid test.
|
|
150
150
|
|
|
151
151
|
### Step Definitions
|
|
@@ -177,7 +177,7 @@ Then('my order amount is ${int}', (sum) => { // eslint-disable-line
|
|
|
177
177
|
});
|
|
178
178
|
```
|
|
179
179
|
|
|
180
|
-
Steps can be either strings or regular expressions. Parameters from string are passed as function arguments. To define parameters in a string we use [Cucumber expressions](https://
|
|
180
|
+
Steps can be either strings or regular expressions. Parameters from string are passed as function arguments. To define parameters in a string we use [Cucumber expressions](https://github.com/cucumber/cucumber-expressions#readme)
|
|
181
181
|
|
|
182
182
|
To list all defined steps run `gherkin:steps` command:
|
|
183
183
|
|
|
@@ -408,7 +408,7 @@ Tag should be placed before *Scenario:* or before *Feature:* keyword. In the las
|
|
|
408
408
|
|
|
409
409
|
### Custom types
|
|
410
410
|
|
|
411
|
-
If you need parameter text in more advanced way and you like using [Cucumber expressions](https://
|
|
411
|
+
If you need parameter text in more advanced way, and you like using [Cucumber expressions](https://github.com/cucumber/cucumber-expressions#readme) better that regular expressions, use `DefineParameterType` function. You can extend Cucumber Expressions, so they automatically convert output parameters to your own types or transforms the match from the regexp.
|
|
412
412
|
|
|
413
413
|
```js
|
|
414
414
|
DefineParameterType({
|
|
@@ -447,14 +447,17 @@ Given('I see {popup_type} popup', (popup) => {
|
|
|
447
447
|
* `avoidDuplicateSteps` - attempts to avoid duplicate step definitions by shallow compare
|
|
448
448
|
|
|
449
449
|
```js
|
|
450
|
+
...
|
|
450
451
|
"gherkin": {
|
|
451
452
|
"features": "./features/*.feature",
|
|
452
453
|
"steps": [
|
|
453
454
|
"./step_definitions/steps.js"
|
|
454
455
|
]
|
|
455
456
|
}
|
|
457
|
+
...
|
|
456
458
|
```
|
|
457
459
|
```js
|
|
460
|
+
...
|
|
458
461
|
"gherkin": {
|
|
459
462
|
"features": [
|
|
460
463
|
"./features/*.feature",
|
|
@@ -464,6 +467,7 @@ Given('I see {popup_type} popup', (popup) => {
|
|
|
464
467
|
"./step_definitions/steps.js"
|
|
465
468
|
]
|
|
466
469
|
}
|
|
470
|
+
...
|
|
467
471
|
```
|
|
468
472
|
|
|
469
473
|
## Before
|
|
@@ -518,7 +522,7 @@ Fail((test, err) => {
|
|
|
518
522
|
|
|
519
523
|
It is common to think that BDD scenario is equal to test. But it's actually not. Not every test should be described as a feature. Not every test is written to test real business value. For instance, regression tests or negative scenario tests are not bringing any value to business. Business analysts don't care about scenario reproducing bug #13, or what error message is displayed when user tries to enter wrong password on login screen. Writing all the tests inside a feature files creates informational overflow.
|
|
520
524
|
|
|
521
|
-
In CodeceptJS you can combine tests written in Gherkin format with classical acceptance tests. This way you can keep your feature files compact with minimal set of scenarios, and write regular tests to cover all cases. Please note, feature files will be executed before tests.
|
|
525
|
+
In CodeceptJS, you can combine tests written in Gherkin format with classical acceptance tests. This way you can keep your feature files compact with minimal set of scenarios, and write regular tests to cover all cases. Please note, feature files will be executed before tests.
|
|
522
526
|
|
|
523
527
|
To run only features use `--features` option:
|
|
524
528
|
|
|
@@ -309,7 +309,8 @@ class ApiDataFactory extends Helper {
|
|
|
309
309
|
} catch (e) {
|
|
310
310
|
modulePath = path.join(global.codecept_dir, modulePath);
|
|
311
311
|
}
|
|
312
|
-
|
|
312
|
+
// check if the new syntax `export default new Factory()` is used and loads the builder, otherwise loads the module that used old syntax `module.exports = new Factory()`.
|
|
313
|
+
const builder = require(modulePath).default || require(modulePath);
|
|
313
314
|
return builder.build(data, options);
|
|
314
315
|
} catch (err) {
|
|
315
316
|
throw new Error(`Couldn't load factory file from ${modulePath}, check that
|
package/docs/build/Appium.js
CHANGED
|
@@ -22,7 +22,7 @@ const vendorPrefix = {
|
|
|
22
22
|
};
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
|
-
* Appium helper extends [
|
|
25
|
+
* Appium helper extends [Webdriver](http://codecept.io/helpers/WebDriver/) helper.
|
|
26
26
|
* It supports all browser methods and also includes special methods for mobile apps testing.
|
|
27
27
|
* You can use this helper to test Web on desktop and mobile devices and mobile apps.
|
|
28
28
|
*
|
|
@@ -31,7 +31,7 @@ const vendorPrefix = {
|
|
|
31
31
|
* Appium is an open source test automation framework for use with native, hybrid and mobile web apps that implements the WebDriver protocol.
|
|
32
32
|
* It allows you to run Selenium tests on mobile devices and also test native, hybrid and mobile web apps.
|
|
33
33
|
*
|
|
34
|
-
* Download and install [Appium](
|
|
34
|
+
* Download and install [Appium](https://appium.io/docs/en/2.1/)
|
|
35
35
|
*
|
|
36
36
|
* ```sh
|
|
37
37
|
* npm install -g appium
|
|
@@ -43,7 +43,7 @@ const vendorPrefix = {
|
|
|
43
43
|
*
|
|
44
44
|
* This helper should be configured in codecept.conf.ts or codecept.conf.js
|
|
45
45
|
*
|
|
46
|
-
* * `appiumV2`: set this to true if you want to run tests with
|
|
46
|
+
* * `appiumV2`: set this to true if you want to run tests with AppiumV2. See more how to setup [here](https://codecept.io/mobile/#setting-up)
|
|
47
47
|
* * `app`: Application path. Local path or remote URL to an .ipa or .apk file, or a .zip containing one of these. Alias to desiredCapabilities.appPackage
|
|
48
48
|
* * `host`: (default: 'localhost') Appium host
|
|
49
49
|
* * `port`: (default: '4723') Appium port
|
|
@@ -117,7 +117,7 @@ const vendorPrefix = {
|
|
|
117
117
|
* }
|
|
118
118
|
* ```
|
|
119
119
|
*
|
|
120
|
-
* Example Android App using
|
|
120
|
+
* Example Android App using AppiumV2 on BrowserStack:
|
|
121
121
|
*
|
|
122
122
|
* ```js
|
|
123
123
|
* {
|
|
@@ -154,7 +154,7 @@ const vendorPrefix = {
|
|
|
154
154
|
* }
|
|
155
155
|
* ```
|
|
156
156
|
*
|
|
157
|
-
* Additional configuration params can be used from <https://github.com/appium/appium/blob/master/docs/en/
|
|
157
|
+
* Additional configuration params can be used from <https://github.com/appium/appium/blob/master/packages/appium/docs/en/guides/caps.md>
|
|
158
158
|
*
|
|
159
159
|
* ## Access From Helpers
|
|
160
160
|
*
|
|
@@ -273,6 +273,8 @@ class Appium extends Webdriver {
|
|
|
273
273
|
if (!key.startsWith(vendorPrefix.appium)) {
|
|
274
274
|
if (key !== 'platformName') {
|
|
275
275
|
_convertedCaps[`${vendorPrefix.appium}:${key}`] = value;
|
|
276
|
+
} else {
|
|
277
|
+
_convertedCaps[`${key}`] = value;
|
|
276
278
|
}
|
|
277
279
|
} else {
|
|
278
280
|
_convertedCaps[`${key}`] = value;
|
|
@@ -1434,7 +1436,7 @@ class Appium extends Webdriver {
|
|
|
1434
1436
|
* ```
|
|
1435
1437
|
* @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator
|
|
1436
1438
|
* @param {string} value text value to append.
|
|
1437
|
-
*
|
|
1439
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1438
1440
|
*
|
|
1439
1441
|
*
|
|
1440
1442
|
*/
|
|
@@ -1456,7 +1458,7 @@ class Appium extends Webdriver {
|
|
|
1456
1458
|
* ```
|
|
1457
1459
|
* @param {CodeceptJS.LocatorOrString} field checkbox located by label | name | CSS | XPath | strict locator.
|
|
1458
1460
|
* @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS | XPath | strict locator.
|
|
1459
|
-
*
|
|
1461
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1460
1462
|
*
|
|
1461
1463
|
*
|
|
1462
1464
|
*/
|
|
@@ -1490,7 +1492,7 @@ class Appium extends Webdriver {
|
|
|
1490
1492
|
*
|
|
1491
1493
|
* @param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
|
|
1492
1494
|
* @param {?CodeceptJS.LocatorOrString | null} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
|
|
1493
|
-
*
|
|
1495
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1494
1496
|
*
|
|
1495
1497
|
*
|
|
1496
1498
|
*/
|
|
@@ -1509,7 +1511,7 @@ class Appium extends Webdriver {
|
|
|
1509
1511
|
* ```
|
|
1510
1512
|
*
|
|
1511
1513
|
* @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
1512
|
-
*
|
|
1514
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1513
1515
|
*
|
|
1514
1516
|
*
|
|
1515
1517
|
*/
|
|
@@ -1526,7 +1528,7 @@ class Appium extends Webdriver {
|
|
|
1526
1528
|
* ```
|
|
1527
1529
|
*
|
|
1528
1530
|
* @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|Strict locator.
|
|
1529
|
-
*
|
|
1531
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1530
1532
|
*
|
|
1531
1533
|
*/
|
|
1532
1534
|
async dontSeeElement(locator) {
|
|
@@ -1545,7 +1547,7 @@ class Appium extends Webdriver {
|
|
|
1545
1547
|
*
|
|
1546
1548
|
* @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
1547
1549
|
* @param {CodeceptJS.StringOrSecret} value value to check.
|
|
1548
|
-
*
|
|
1550
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1549
1551
|
*
|
|
1550
1552
|
*
|
|
1551
1553
|
*/
|
|
@@ -1566,7 +1568,7 @@ class Appium extends Webdriver {
|
|
|
1566
1568
|
*
|
|
1567
1569
|
* @param {string} text which is not present.
|
|
1568
1570
|
* @param {CodeceptJS.LocatorOrString} [context] (optional) element located by CSS|XPath|strict locator in which to perfrom search.
|
|
1569
|
-
*
|
|
1571
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1570
1572
|
*
|
|
1571
1573
|
*/
|
|
1572
1574
|
async dontSee(text, context = null) {
|
|
@@ -1590,7 +1592,7 @@ class Appium extends Webdriver {
|
|
|
1590
1592
|
* ```
|
|
1591
1593
|
* @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
1592
1594
|
* @param {CodeceptJS.StringOrSecret} value text value to fill.
|
|
1593
|
-
*
|
|
1595
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1594
1596
|
*
|
|
1595
1597
|
*
|
|
1596
1598
|
*/
|
|
@@ -1752,7 +1754,7 @@ class Appium extends Webdriver {
|
|
|
1752
1754
|
*
|
|
1753
1755
|
* @param {LocatorOrString} locator located by CSS|XPath|strict locator.
|
|
1754
1756
|
* @param {ScrollIntoViewOptions} scrollIntoViewOptions see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView.
|
|
1755
|
-
*
|
|
1757
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1756
1758
|
*
|
|
1757
1759
|
*
|
|
1758
1760
|
* Supported only for web testing
|
|
@@ -1771,7 +1773,7 @@ class Appium extends Webdriver {
|
|
|
1771
1773
|
* ```
|
|
1772
1774
|
*
|
|
1773
1775
|
* @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
1774
|
-
*
|
|
1776
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1775
1777
|
*
|
|
1776
1778
|
*
|
|
1777
1779
|
*/
|
|
@@ -1788,7 +1790,7 @@ class Appium extends Webdriver {
|
|
|
1788
1790
|
* I.seeElement('#modal');
|
|
1789
1791
|
* ```
|
|
1790
1792
|
* @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
|
|
1791
|
-
*
|
|
1793
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1792
1794
|
*
|
|
1793
1795
|
*
|
|
1794
1796
|
*/
|
|
@@ -1809,7 +1811,7 @@ class Appium extends Webdriver {
|
|
|
1809
1811
|
* ```
|
|
1810
1812
|
* @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
|
|
1811
1813
|
* @param {CodeceptJS.StringOrSecret} value value to check.
|
|
1812
|
-
*
|
|
1814
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1813
1815
|
*
|
|
1814
1816
|
*
|
|
1815
1817
|
*/
|
|
@@ -1830,7 +1832,7 @@ class Appium extends Webdriver {
|
|
|
1830
1832
|
* ```
|
|
1831
1833
|
* @param {string} text expected on page.
|
|
1832
1834
|
* @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS|Xpath|strict locator in which to search for text.
|
|
1833
|
-
*
|
|
1835
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1834
1836
|
*
|
|
1835
1837
|
*
|
|
1836
1838
|
*/
|
|
@@ -1860,7 +1862,7 @@ class Appium extends Webdriver {
|
|
|
1860
1862
|
* ```
|
|
1861
1863
|
* @param {LocatorOrString} select field located by label|name|CSS|XPath|strict locator.
|
|
1862
1864
|
* @param {string|Array<*>} option visible text or value of option.
|
|
1863
|
-
*
|
|
1865
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1864
1866
|
*
|
|
1865
1867
|
*
|
|
1866
1868
|
* Supported only for web testing
|
|
@@ -1881,7 +1883,7 @@ class Appium extends Webdriver {
|
|
|
1881
1883
|
*
|
|
1882
1884
|
* @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
|
|
1883
1885
|
* @param {number} [sec] (optional, `1` by default) time in seconds to wait
|
|
1884
|
-
*
|
|
1886
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1885
1887
|
*
|
|
1886
1888
|
*
|
|
1887
1889
|
*/
|
|
@@ -1900,7 +1902,7 @@ class Appium extends Webdriver {
|
|
|
1900
1902
|
*
|
|
1901
1903
|
* @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
|
|
1902
1904
|
* @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
|
|
1903
|
-
*
|
|
1905
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1904
1906
|
*
|
|
1905
1907
|
*
|
|
1906
1908
|
*/
|
|
@@ -1919,7 +1921,7 @@ class Appium extends Webdriver {
|
|
|
1919
1921
|
*
|
|
1920
1922
|
* @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
|
|
1921
1923
|
* @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
|
|
1922
|
-
*
|
|
1924
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1923
1925
|
*
|
|
1924
1926
|
*
|
|
1925
1927
|
*/
|
|
@@ -1941,7 +1943,7 @@ class Appium extends Webdriver {
|
|
|
1941
1943
|
* @param {string }text to wait for.
|
|
1942
1944
|
* @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
|
|
1943
1945
|
* @param {CodeceptJS.LocatorOrString} [context] (optional) element located by CSS|XPath|strict locator.
|
|
1944
|
-
*
|
|
1946
|
+
* @returns {Promise<void>} automatically synchronized promise through #recorder
|
|
1945
1947
|
*
|
|
1946
1948
|
*
|
|
1947
1949
|
*/
|