codeceptjs 2.3.4 → 2.4.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 +52 -0
- package/README.md +28 -6
- package/bin/codecept.js +42 -0
- package/docs/advanced.md +45 -1
- package/docs/angular.md +3 -3
- package/docs/basics.md +162 -118
- package/docs/bdd.md +30 -5
- package/docs/best.md +8 -6
- package/docs/books.md +6 -1
- package/docs/build/Appium.js +95 -85
- package/docs/build/FileSystem.js +48 -3
- package/docs/build/GraphQL.js +3 -2
- package/docs/build/GraphQLDataFactory.js +1 -0
- package/docs/build/Mochawesome.js +3 -2
- package/docs/build/MockRequest.js +23 -5
- package/docs/build/Nightmare.js +87 -128
- package/docs/build/Protractor.js +107 -155
- package/docs/build/Puppeteer.js +190 -174
- package/docs/build/REST.js +13 -9
- package/docs/build/SeleniumWebdriver.js +0 -17
- package/docs/build/TestCafe.js +164 -158
- package/docs/build/WebDriver.js +236 -211
- package/docs/build/WebDriverIO.js +218 -187
- package/docs/changelog.md +57 -1
- package/docs/commands.md +41 -2
- package/docs/community-helpers.md +12 -1
- package/docs/configuration.md +5 -2
- package/docs/continuous-integration.md +22 -0
- package/docs/{helpers.md → custom-helpers.md} +16 -10
- package/docs/data.md +7 -6
- package/docs/detox.md +6 -6
- package/docs/email.md +4 -2
- package/docs/examples.md +22 -3
- package/docs/helpers/ApiDataFactory.md +15 -13
- package/docs/helpers/Appium.md +1011 -468
- package/docs/helpers/Detox.md +33 -26
- package/docs/helpers/FileSystem.md +43 -13
- package/docs/helpers/GraphQL.md +17 -15
- package/docs/helpers/GraphQLDataFactory.md +15 -13
- package/docs/helpers/Mochawesome.md +3 -1
- package/docs/helpers/MockRequest.md +37 -19
- package/docs/helpers/Nightmare.md +129 -240
- package/docs/helpers/Polly.md +1 -1
- package/docs/helpers/Protractor.md +157 -298
- package/docs/helpers/Puppeteer.md +216 -335
- package/docs/helpers/REST.md +29 -24
- package/docs/helpers/TestCafe.md +137 -235
- package/docs/helpers/WebDriver.md +250 -347
- package/docs/hooks.md +14 -10
- package/docs/index.md +112 -0
- package/docs/installation.md +3 -1
- package/docs/locators.md +19 -8
- package/docs/mobile-react-native-locators.md +2 -2
- package/docs/mobile.md +5 -3
- package/docs/nightmare.md +2 -1
- package/docs/pageobjects.md +4 -2
- package/docs/parallel.md +4 -2
- package/docs/plugins.md +41 -15
- package/docs/puppeteer.md +8 -6
- package/docs/quickstart.md +130 -0
- package/docs/react.md +4 -2
- package/docs/reports.md +6 -4
- package/docs/testcafe.md +10 -8
- package/docs/translation.md +4 -2
- package/docs/ui.md +56 -0
- package/docs/videos.md +11 -2
- package/docs/visual.md +7 -5
- package/docs/vue.md +121 -0
- package/docs/webapi/appendField.mustache +1 -1
- package/docs/webapi/attachFile.mustache +1 -1
- package/docs/webapi/checkOption.mustache +2 -2
- package/docs/webapi/clearCookie.mustache +1 -1
- package/docs/webapi/click.mustache +2 -2
- package/docs/webapi/clickLink.mustache +2 -2
- package/docs/webapi/dontSee.mustache +1 -2
- package/docs/webapi/dontSeeCheckboxIsChecked.mustache +1 -1
- package/docs/webapi/dontSeeElement.mustache +1 -1
- package/docs/webapi/dontSeeElementInDOM.mustache +1 -1
- package/docs/webapi/dontSeeInField.mustache +1 -1
- package/docs/webapi/doubleClick.mustache +2 -2
- package/docs/webapi/downloadFile.mustache +1 -1
- package/docs/webapi/dragSlider.mustache +1 -1
- package/docs/webapi/executeAsyncScript.mustache +2 -1
- package/docs/webapi/executeScript.mustache +2 -1
- package/docs/webapi/fillField.mustache +1 -1
- package/docs/webapi/grabAttributeFrom.mustache +1 -1
- package/docs/webapi/grabBrowserLogs.mustache +1 -1
- package/docs/webapi/grabCookie.mustache +2 -2
- package/docs/webapi/grabCssPropertyFrom.mustache +1 -1
- package/docs/webapi/grabHTMLFrom.mustache +1 -1
- package/docs/webapi/grabNumberOfVisibleElements.mustache +1 -1
- package/docs/webapi/grabPageScrollPosition.mustache +1 -1
- package/docs/webapi/grabTextFrom.mustache +2 -2
- package/docs/webapi/grabValueFrom.mustache +1 -1
- package/docs/webapi/moveCursorTo.mustache +3 -3
- package/docs/webapi/pressKey.mustache +1 -1
- package/docs/webapi/pressKeyWithKeyNormalization.mustache +1 -1
- package/docs/webapi/rightClick.mustache +2 -2
- package/docs/webapi/saveScreenshot.mustache +1 -1
- package/docs/webapi/scrollIntoView.mustache +10 -0
- package/docs/webapi/scrollTo.mustache +3 -3
- package/docs/webapi/see.mustache +1 -1
- package/docs/webapi/seeAttributesOnElements.mustache +1 -1
- package/docs/webapi/seeCheckboxIsChecked.mustache +1 -1
- package/docs/webapi/seeCssPropertiesOnElements.mustache +1 -1
- package/docs/webapi/seeElement.mustache +1 -1
- package/docs/webapi/seeElementInDOM.mustache +1 -1
- package/docs/webapi/seeInField.mustache +1 -1
- package/docs/webapi/seeNumberOfElements.mustache +1 -1
- package/docs/webapi/seeNumberOfVisibleElements.mustache +1 -1
- package/docs/webapi/seeTextEquals.mustache +8 -0
- package/docs/webapi/selectOption.mustache +2 -2
- package/docs/webapi/switchTo.mustache +1 -1
- package/docs/webapi/uncheckOption.mustache +2 -2
- package/docs/webapi/waitForClickable.mustache +10 -0
- package/docs/webapi/waitForDetached.mustache +2 -2
- package/docs/webapi/waitForElement.mustache +2 -2
- package/docs/webapi/waitForEnabled.mustache +2 -2
- package/docs/webapi/waitForFunction.mustache +2 -2
- package/docs/webapi/waitForInvisible.mustache +2 -2
- package/docs/webapi/waitForText.mustache +2 -2
- package/docs/webapi/waitForValue.mustache +1 -1
- package/docs/webapi/waitForVisible.mustache +2 -2
- package/docs/webapi/waitInUrl.mustache +1 -1
- package/docs/webapi/waitNumberOfVisibleElements.mustache +2 -2
- package/docs/webapi/waitToHide.mustache +2 -2
- package/docs/webapi/waitUntil.mustache +3 -2
- package/docs/webapi/waitUrlEquals.mustache +1 -1
- package/docs/webdriver.md +20 -18
- package/docs/wiki/.git/FETCH_HEAD +1 -0
- package/docs/wiki/.git/HEAD +1 -0
- package/docs/wiki/.git/ORIG_HEAD +1 -0
- package/docs/wiki/.git/config +11 -0
- package/docs/wiki/.git/description +1 -0
- package/docs/wiki/.git/hooks/applypatch-msg.sample +15 -0
- package/docs/wiki/.git/hooks/commit-msg.sample +24 -0
- package/docs/wiki/.git/hooks/fsmonitor-watchman.sample +114 -0
- package/docs/wiki/.git/hooks/post-update.sample +8 -0
- package/docs/wiki/.git/hooks/pre-applypatch.sample +14 -0
- package/docs/wiki/.git/hooks/pre-commit.sample +49 -0
- package/docs/wiki/.git/hooks/pre-push.sample +53 -0
- package/docs/wiki/.git/hooks/pre-rebase.sample +169 -0
- package/docs/wiki/.git/hooks/pre-receive.sample +24 -0
- package/docs/wiki/.git/hooks/prepare-commit-msg.sample +42 -0
- package/docs/wiki/.git/hooks/update.sample +128 -0
- package/docs/wiki/.git/index +0 -0
- package/docs/wiki/.git/info/exclude +6 -0
- package/docs/wiki/.git/logs/HEAD +4 -0
- package/docs/wiki/.git/logs/refs/heads/master +4 -0
- package/docs/wiki/.git/logs/refs/remotes/origin/HEAD +1 -0
- package/docs/wiki/.git/logs/refs/remotes/origin/master +3 -0
- package/docs/wiki/.git/objects/00/d216b0774d15db2d0a2a0d4ce249b5251acc55 +3 -0
- package/docs/wiki/.git/objects/09/01d87c5241905fdfe3493cfe8f04df4a2685ea +0 -0
- package/docs/wiki/.git/objects/0d/bdd0c20c4deb6a8cc81dbbf32ecf8c09238983 +2 -0
- package/docs/wiki/.git/objects/1a/c29e4fa82422c52392f22f0f2b8d1a759535bf +0 -0
- package/docs/wiki/.git/objects/27/12f92898d3e8f68e229b6cda76570d6c66d781 +0 -0
- package/docs/wiki/.git/objects/2d/dbe22c257166b648928eeb9460ecfb71ba702d +0 -0
- package/docs/wiki/.git/objects/2f/c942ec3773efd2678d9ff98035c61fcded81a1 +0 -0
- package/docs/wiki/.git/objects/40/a2856342c67796b48911a256b764fb06888b94 +5 -0
- package/docs/wiki/.git/objects/47/53181844fc4dc563cf3aa5e80462243cb58d38 +0 -0
- package/docs/wiki/.git/objects/4e/24a95fb2e4f8ffef51f19b694451a205c06f10 +3 -0
- package/docs/wiki/.git/objects/73/31ebd96f3c7e08a9f63f05a25f939afa0d4de1 +0 -0
- package/docs/wiki/.git/objects/86/19cbb2289caa502e33fccf0ed14eecf6ba2ba0 +0 -0
- package/docs/wiki/.git/objects/a4/72f797d9d74b87c9f71a2b1539d75bb07d1e35 +0 -0
- package/docs/wiki/.git/objects/c9/9f3e4bd227d6b050b2e416f9876df49583dbf6 +0 -0
- package/docs/wiki/.git/objects/ca/e609b4ef3e0ef85fcbe0d68d1a58246584b915 +0 -0
- package/docs/wiki/.git/objects/d5/8386ca72f6d550548f3d71d74e3ac73d5ad488 +0 -0
- package/docs/wiki/.git/objects/d9/c6874a6de524bdafeb563a20d847f4fdd59a86 +0 -0
- package/docs/wiki/.git/objects/f1/c944675bb38b40ae553b0be36c14674c79af54 +0 -0
- package/docs/wiki/.git/objects/pack/pack-28da0fc7e6c08d4c5350717bfbb7b1c53e8198ad.idx +0 -0
- package/docs/wiki/.git/objects/pack/pack-28da0fc7e6c08d4c5350717bfbb7b1c53e8198ad.pack +0 -0
- package/docs/wiki/.git/packed-refs +2 -0
- package/docs/wiki/.git/refs/heads/master +1 -0
- package/docs/wiki/.git/refs/remotes/origin/HEAD +1 -0
- package/docs/wiki/.git/refs/remotes/origin/master +1 -0
- package/docs/wiki/Books-&-Posts.md +27 -0
- package/docs/wiki/Community-Helpers.md +41 -0
- package/docs/wiki/Examples.md +138 -0
- package/docs/wiki/Home.md +11 -0
- package/docs/wiki/Release-process.md +25 -0
- package/docs/wiki/Roadmap.md +23 -0
- package/docs/wiki/Videos.md +19 -0
- package/lib/actor.js +18 -1
- package/lib/assert/error.js +3 -3
- package/lib/codecept.js +9 -6
- package/lib/command/configMigrate.js +7 -6
- package/lib/command/definitions.js +98 -350
- package/lib/command/generate.js +22 -17
- package/lib/command/gherkin/init.js +2 -1
- package/lib/command/gherkin/snippets.js +6 -6
- package/lib/command/gherkin/steps.js +0 -1
- package/lib/command/info.js +40 -0
- package/lib/command/init.js +54 -41
- package/lib/command/run-multiple.js +5 -4
- package/lib/command/run-rerun.js +39 -0
- package/lib/command/run-workers.js +4 -6
- package/lib/command/run.js +8 -18
- package/lib/command/utils.js +23 -2
- package/lib/command/workers/runTests.js +1 -2
- package/lib/config.js +10 -4
- package/lib/container.js +31 -6
- package/lib/data/dataTableArgument.js +31 -0
- package/lib/data/table.js +4 -0
- package/lib/event.js +65 -1
- package/lib/helper/Appium.js +52 -38
- package/lib/helper/FileSystem.js +48 -3
- package/lib/helper/GraphQL.js +3 -2
- package/lib/helper/GraphQLDataFactory.js +1 -0
- package/lib/helper/Mochawesome.js +3 -2
- package/lib/helper/MockRequest.js +23 -5
- package/lib/helper/Nightmare.js +5 -6
- package/lib/helper/Protractor.js +7 -8
- package/lib/helper/Puppeteer.js +76 -20
- package/lib/helper/REST.js +13 -9
- package/lib/helper/SeleniumWebdriver.js +0 -17
- package/lib/helper/TestCafe.js +84 -36
- package/lib/helper/WebDriver.js +113 -59
- package/lib/helper/WebDriverIO.js +43 -59
- package/lib/helper/clientscripts/nightmare.js +66 -4
- package/lib/helper/scripts/isElementClickable.js +24 -0
- package/lib/helper.js +34 -10
- package/lib/history.js +1 -1
- package/lib/hooks.js +2 -1
- package/lib/index.js +19 -0
- package/lib/interfaces/bdd.js +4 -0
- package/lib/interfaces/featureConfig.js +10 -3
- package/lib/interfaces/gherkin.js +6 -2
- package/lib/interfaces/scenarioConfig.js +17 -6
- package/lib/listener/config.js +1 -1
- package/lib/listener/exit.js +6 -0
- package/lib/listener/steps.js +0 -1
- package/lib/listener/trace.js +0 -1
- package/lib/locator.js +67 -2
- package/lib/output.js +53 -0
- package/lib/parser.js +2 -71
- package/lib/pause.js +3 -2
- package/lib/plugin/allure.js +41 -22
- package/lib/plugin/autoLogin.js +4 -1
- package/lib/plugin/pauseOnFail.js +38 -0
- package/lib/plugin/puppeteerCoverage.js +8 -7
- package/lib/plugin/screenshotOnFail.js +13 -8
- package/lib/plugin/stepByStepReport.js +7 -6
- package/lib/plugin/wdio.js +2 -1
- package/lib/recorder.js +85 -7
- package/lib/rerun.js +81 -0
- package/lib/secret.js +6 -0
- package/lib/session.js +9 -2
- package/lib/step.js +37 -2
- package/lib/store.js +5 -1
- package/lib/ui.js +34 -8
- package/lib/utils.js +6 -13
- package/lib/within.js +5 -0
- package/package.json +49 -29
- package/typings/Mocha.d.ts +21 -0
- package/typings/Protractor.d.ts +16 -0
- package/typings/index.d.ts +169 -0
- package/typings/jsdoc.conf.js +34 -0
- package/typings/jsdoc.namespace.js +29 -0
- package/typings/types.d.ts +9827 -0
- package/typings/utils.d.ts +7 -0
- package/docs/acceptance.md +0 -409
- package/docs/api/codecept.md +0 -75
- package/docs/api/config.md +0 -49
- package/docs/api/container.md +0 -66
- package/docs/api/helper.md +0 -116
- package/docs/api/output.md +0 -67
- package/docs/api/recorder.md +0 -63
- package/docs/helpers/SeleniumWebdriver.md +0 -92
- package/docs/helpers/WebDriverIO.md +0 -1671
package/docs/api/helper.md
DELETED
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
<!-- Generated by documentation.js. Update this documentation by updating the source code. -->
|
|
2
|
-
|
|
3
|
-
## Helper
|
|
4
|
-
|
|
5
|
-
### Parameters
|
|
6
|
-
|
|
7
|
-
- `config`
|
|
8
|
-
|
|
9
|
-
### \_after
|
|
10
|
-
|
|
11
|
-
Hook executed after each test
|
|
12
|
-
|
|
13
|
-
### \_afterStep
|
|
14
|
-
|
|
15
|
-
Hook executed after each step
|
|
16
|
-
|
|
17
|
-
#### Parameters
|
|
18
|
-
|
|
19
|
-
- `step` **any**
|
|
20
|
-
|
|
21
|
-
### \_afterSuite
|
|
22
|
-
|
|
23
|
-
Hook executed after each suite
|
|
24
|
-
|
|
25
|
-
#### Parameters
|
|
26
|
-
|
|
27
|
-
- `suite` **any**
|
|
28
|
-
|
|
29
|
-
### \_before
|
|
30
|
-
|
|
31
|
-
Hook executed before each test.
|
|
32
|
-
|
|
33
|
-
### \_beforeStep
|
|
34
|
-
|
|
35
|
-
Hook executed before each step
|
|
36
|
-
|
|
37
|
-
#### Parameters
|
|
38
|
-
|
|
39
|
-
- `step` **any**
|
|
40
|
-
|
|
41
|
-
### \_beforeSuite
|
|
42
|
-
|
|
43
|
-
Hook executed before each suite
|
|
44
|
-
|
|
45
|
-
#### Parameters
|
|
46
|
-
|
|
47
|
-
- `suite` **any**
|
|
48
|
-
|
|
49
|
-
### \_failed
|
|
50
|
-
|
|
51
|
-
Hook executed after each failed test
|
|
52
|
-
|
|
53
|
-
#### Parameters
|
|
54
|
-
|
|
55
|
-
- `test` **any**
|
|
56
|
-
|
|
57
|
-
### \_finishTest
|
|
58
|
-
|
|
59
|
-
Hook executed after all tests are executed
|
|
60
|
-
|
|
61
|
-
#### Parameters
|
|
62
|
-
|
|
63
|
-
- `suite` **any**
|
|
64
|
-
|
|
65
|
-
### \_init
|
|
66
|
-
|
|
67
|
-
Hook executed before all tests
|
|
68
|
-
|
|
69
|
-
### \_passed
|
|
70
|
-
|
|
71
|
-
Hook executed after each passed test
|
|
72
|
-
|
|
73
|
-
#### Parameters
|
|
74
|
-
|
|
75
|
-
- `test` **any**
|
|
76
|
-
|
|
77
|
-
### \_setConfig
|
|
78
|
-
|
|
79
|
-
Sets config for current test
|
|
80
|
-
|
|
81
|
-
#### Parameters
|
|
82
|
-
|
|
83
|
-
- `opts`
|
|
84
|
-
|
|
85
|
-
### \_test
|
|
86
|
-
|
|
87
|
-
Hook provides a test details
|
|
88
|
-
Executed in the very beginning of a test
|
|
89
|
-
|
|
90
|
-
#### Parameters
|
|
91
|
-
|
|
92
|
-
- `test` **any**
|
|
93
|
-
|
|
94
|
-
### \_validateConfig
|
|
95
|
-
|
|
96
|
-
Abstract method to validate config
|
|
97
|
-
|
|
98
|
-
#### Parameters
|
|
99
|
-
|
|
100
|
-
- `config` **any**
|
|
101
|
-
|
|
102
|
-
### debug
|
|
103
|
-
|
|
104
|
-
Print debug message to console (outputs only in debug mode)
|
|
105
|
-
|
|
106
|
-
#### Parameters
|
|
107
|
-
|
|
108
|
-
- `msg`
|
|
109
|
-
|
|
110
|
-
### helpers
|
|
111
|
-
|
|
112
|
-
Access another configured helper: `this.helpers['AnotherHelper']`
|
|
113
|
-
|
|
114
|
-
### \_config
|
|
115
|
-
|
|
116
|
-
Abstract method to provide required config options
|
package/docs/api/output.md
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
<!-- Generated by documentation.js. Update this documentation by updating the source code. -->
|
|
2
|
-
|
|
3
|
-
## debug
|
|
4
|
-
|
|
5
|
-
Print information in --debug mode
|
|
6
|
-
|
|
7
|
-
### Parameters
|
|
8
|
-
|
|
9
|
-
- `msg`
|
|
10
|
-
|
|
11
|
-
## error
|
|
12
|
-
|
|
13
|
-
Print error
|
|
14
|
-
|
|
15
|
-
### Parameters
|
|
16
|
-
|
|
17
|
-
- `msg`
|
|
18
|
-
|
|
19
|
-
## level
|
|
20
|
-
|
|
21
|
-
Set or return current verbosity level
|
|
22
|
-
|
|
23
|
-
### Parameters
|
|
24
|
-
|
|
25
|
-
- `level`
|
|
26
|
-
|
|
27
|
-
## log
|
|
28
|
-
|
|
29
|
-
Print information in --verbose mode
|
|
30
|
-
|
|
31
|
-
### Parameters
|
|
32
|
-
|
|
33
|
-
- `msg`
|
|
34
|
-
|
|
35
|
-
## process
|
|
36
|
-
|
|
37
|
-
Print information for a process
|
|
38
|
-
Used in multiple-run
|
|
39
|
-
|
|
40
|
-
### Parameters
|
|
41
|
-
|
|
42
|
-
- `process`
|
|
43
|
-
|
|
44
|
-
## say
|
|
45
|
-
|
|
46
|
-
Print a text in console log
|
|
47
|
-
|
|
48
|
-
### Parameters
|
|
49
|
-
|
|
50
|
-
- `message`
|
|
51
|
-
- `color` (optional, default `'cyan'`)
|
|
52
|
-
|
|
53
|
-
## step
|
|
54
|
-
|
|
55
|
-
Print a step
|
|
56
|
-
|
|
57
|
-
### Parameters
|
|
58
|
-
|
|
59
|
-
- `step`
|
|
60
|
-
|
|
61
|
-
## success
|
|
62
|
-
|
|
63
|
-
Print a successful message
|
|
64
|
-
|
|
65
|
-
### Parameters
|
|
66
|
-
|
|
67
|
-
- `msg`
|
package/docs/api/recorder.md
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
<!-- Generated by documentation.js. Update this documentation by updating the source code. -->
|
|
2
|
-
|
|
3
|
-
## recorder
|
|
4
|
-
|
|
5
|
-
Singleton object to record all test steps as promises and run them in chain.
|
|
6
|
-
|
|
7
|
-
### add
|
|
8
|
-
|
|
9
|
-
Adds a promise to a chain.
|
|
10
|
-
Promise description should be passed as first parameter.
|
|
11
|
-
|
|
12
|
-
#### Parameters
|
|
13
|
-
|
|
14
|
-
- `taskName` **any**
|
|
15
|
-
- `fn` **any** (optional, default `undefined`)
|
|
16
|
-
- `force` **any** (optional, default `false`)
|
|
17
|
-
- `retry` **[boolean][1]** true: it will retries if `retryOpts` set.
|
|
18
|
-
false: ignore `retryOpts` and won't retry. (optional, default `true`)
|
|
19
|
-
|
|
20
|
-
### errHandler
|
|
21
|
-
|
|
22
|
-
Add error handler to catch rejected promises
|
|
23
|
-
|
|
24
|
-
#### Parameters
|
|
25
|
-
|
|
26
|
-
- `fn` **any**
|
|
27
|
-
|
|
28
|
-
### promise
|
|
29
|
-
|
|
30
|
-
Get latest promise in chain.
|
|
31
|
-
|
|
32
|
-
### reset
|
|
33
|
-
|
|
34
|
-
Stops current promise chain, calls `catch`.
|
|
35
|
-
Resets recorder to initial state.
|
|
36
|
-
|
|
37
|
-
### retries
|
|
38
|
-
|
|
39
|
-
### scheduled
|
|
40
|
-
|
|
41
|
-
Get a list of all chained tasks
|
|
42
|
-
|
|
43
|
-
### start
|
|
44
|
-
|
|
45
|
-
Start recording promises
|
|
46
|
-
|
|
47
|
-
### stop
|
|
48
|
-
|
|
49
|
-
Stops recording promises
|
|
50
|
-
|
|
51
|
-
### throw
|
|
52
|
-
|
|
53
|
-
Adds a promise which throws an error into a chain
|
|
54
|
-
|
|
55
|
-
#### Parameters
|
|
56
|
-
|
|
57
|
-
- `err` **any**
|
|
58
|
-
|
|
59
|
-
### toString
|
|
60
|
-
|
|
61
|
-
Get a state of current queue and tasks
|
|
62
|
-
|
|
63
|
-
[1]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: SeleniumWebdriver
|
|
3
|
-
title: SeleniumWebdriver
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
<!-- Generated by documentation.js. Update this documentation by updating the source code. -->
|
|
7
|
-
|
|
8
|
-
## SeleniumWebdriver
|
|
9
|
-
|
|
10
|
-
Extends Helper
|
|
11
|
-
|
|
12
|
-
SeleniumWebdriver helper is based on the official [Selenium Webdriver JS][1]
|
|
13
|
-
library. It implements common web api methods (amOnPage, click, see).
|
|
14
|
-
|
|
15
|
-
## Backends
|
|
16
|
-
|
|
17
|
-
### Selenium Installation
|
|
18
|
-
|
|
19
|
-
1. Download [Selenium Server][2]
|
|
20
|
-
2. For Chrome browser install [ChromeDriver][3], for Firefox browser install [GeckoDriver][4].
|
|
21
|
-
3. Launch the server: `java -jar selenium-server-standalone-3.xx.xxx.jar`. To locate Chromedriver binary use `-Dwebdriver.chrome.driver=./chromedriver` option. For Geckodriver use `-Dwebdriver.gecko.driver=`.
|
|
22
|
-
|
|
23
|
-
### PhantomJS Installation
|
|
24
|
-
|
|
25
|
-
PhantomJS is a headless alternative to Selenium Server that implements [the WebDriver protocol][5].
|
|
26
|
-
It allows you to run Selenium tests on a server without a GUI installed.
|
|
27
|
-
|
|
28
|
-
1. Download [PhantomJS][6]
|
|
29
|
-
2. Run PhantomJS in WebDriver mode: `phantomjs --webdriver=4444`
|
|
30
|
-
|
|
31
|
-
## Configuration
|
|
32
|
-
|
|
33
|
-
This helper should be configured in codecept.json or codecept.conf.js
|
|
34
|
-
|
|
35
|
-
- `url` - base url of website to be tested
|
|
36
|
-
- `browser` - browser in which perform testing
|
|
37
|
-
- `driver` - which protractor driver to use (local, direct, session, hosted, sauce, browserstack). By default set to 'hosted' which requires selenium server to be started.
|
|
38
|
-
- `restart` - restart browser between tests (default: true).
|
|
39
|
-
- `smartWait`: (optional) enables SmartWait; wait for additional milliseconds for element to appear. Enable for 5 secs: "smartWait": 5000
|
|
40
|
-
- `disableScreenshots` - don't save screenshot on failure
|
|
41
|
-
- `uniqueScreenshotNames` - option to prevent screenshot override if you have scenarios with the same name in different suites
|
|
42
|
-
- `keepBrowserState` - keep browser state between tests when `restart` set to false.
|
|
43
|
-
- `keepCookies` - keep cookies between tests when `restart` set to false.\
|
|
44
|
-
- `seleniumAddress` - Selenium address to connect (default: [http://localhost:4444/wd/hub][7])
|
|
45
|
-
- `waitForTimeout`: (optional) sets default wait time in _ms_ for all `wait` functions. 1000 by default;
|
|
46
|
-
- `scriptTimeout`: (optional) sets default timeout for scripts in `executeAsync`. 1000 by default.
|
|
47
|
-
- `windowSize`: (optional) default window size. Set to `maximize` or a dimension in the format `640x480`.
|
|
48
|
-
- `manualStart` - do not start browser before a test, start it manually inside a helper with `this.helpers["WebDriverIO"]._startBrowser()`
|
|
49
|
-
- `capabilities`: {} - list of [Desired Capabilities][8]
|
|
50
|
-
|
|
51
|
-
Example:
|
|
52
|
-
|
|
53
|
-
```json
|
|
54
|
-
{
|
|
55
|
-
"helpers": {
|
|
56
|
-
"SeleniumWebdriver" : {
|
|
57
|
-
"url": "http://localhost",
|
|
58
|
-
"browser": "chrome",
|
|
59
|
-
"smartWait": 5000,
|
|
60
|
-
"restart": false
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
## Access From Helpers
|
|
67
|
-
|
|
68
|
-
Receive a WebDriverIO client from a custom helper by accessing `browser` property:
|
|
69
|
-
|
|
70
|
-
```js
|
|
71
|
-
this.helpers['SeleniumWebdriver'].browser
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### Parameters
|
|
75
|
-
|
|
76
|
-
- `config`
|
|
77
|
-
|
|
78
|
-
[1]: https://www.npmjs.com/package/selenium-webdriver
|
|
79
|
-
|
|
80
|
-
[2]: http://docs.seleniumhq.org/download/
|
|
81
|
-
|
|
82
|
-
[3]: https://sites.google.com/a/chromium.org/chromedriver/getting-started
|
|
83
|
-
|
|
84
|
-
[4]: https://github.com/mozilla/geckodriver
|
|
85
|
-
|
|
86
|
-
[5]: https://code.google.com/p/selenium/wiki/JsonWireProtocol
|
|
87
|
-
|
|
88
|
-
[6]: http://phantomjs.org/download.html
|
|
89
|
-
|
|
90
|
-
[7]: http://localhost:4444/wd/hub
|
|
91
|
-
|
|
92
|
-
[8]: https://github.com/SeleniumHQ/selenium/wiki/DesiredCapabilities
|