You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+25-4
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,26 @@
1
1
# Changelog
2
2
3
+
## [1.2.0] - 2017-07-12
4
+
### Added
5
+
- Rules:
6
+
-[Given]`I expect that element "([^"]*)?" is( not)* empty$`
7
+
8
+
### Changed
9
+
- Switched to [Yarn]() for managing our packages
10
+
- Readme to reflect Yarn changes
11
+
- Updated dependencies
12
+
- Removed no longer needed dependencies Cucumber and Babel-jest
13
+
- Locked Webdriverio to 4.7.1 to make sure we don't upgrade before all deprecated functions will be fixed
14
+
- Removed specific element/inputfield requirement from checkContainsAnyText, checkContainsText and checkEqualsText check's (thanks [cheapsteak](https://github.com/cheapsteak))
15
+
16
+
### Fixed
17
+
-`checkCointainsText` now correctly checks if the given element actualy contains the given text (thanks [inspiraller](https://github.com/inspiraller))
18
+
- Removed unneeded sudo from `clean` script (thanks [l-hendriks](https://github.com/l-hendriks))
19
+
- ESLint error's after upgrading ESLint
20
+
- Resolved an issue with running `yarn run clean` in Bash (thanks [mondwan](https://github.com/mondwan))
21
+
- Fixed `^I expect that element "([^"]*)?" is( not)* empty$` then rule (thanks [stevezxu](https://github.com/stevezxu))
22
+
23
+
3
24
## [1.1.1] - 2017-03-03
4
25
### Added
5
26
- Requirements section to the readme
@@ -15,7 +36,7 @@
15
36
16
37
17
38
## [1.1.0] - 2017-01-14
18
-
### Added
39
+
### Added
19
40
- Changelog
20
41
- Unit-tests set-up using Jest
21
42
- Basic unit-tests for all Javascript code
@@ -26,12 +47,12 @@
26
47
- Favicon to the demo-app
27
48
28
49
### Changed
29
-
- Moved the boilerplate code from `test/` to `src/` to make clear it's the
50
+
- Moved the boilerplate code from `test/` to `src/` to make clear it's the
30
51
source of the project and separate if from the actual test code.
31
52
- ESLint configuration now matches ES6 `comma-dangle`
Copy file name to clipboardExpand all lines: README.md
+16-13
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,9 @@ Boilerplate project to run WebdriverIO tests with [Cucumber](https://cucumber.io
9
9
10
10
## Requirements
11
11
12
-
- Node version 4 or higher
12
+
- Node version 6 or higher
13
+
14
+
Although this project works fine with NPM we recommend to use Yarn (>= 0.20.0) instead, due to its speed & solid dependency locking mechanism. To keep things simple we use yarn in this guide, but feel free to replace this with NPM if that is what you are using.
13
15
14
16
## Quick start
15
17
@@ -22,14 +24,14 @@ Choose one of the following options:
22
24
23
25
3. Clean the project (Optional):
24
26
-*On OSX/Linux:*
25
-
-- Run `npm run clean`
27
+
-- Run `yarn run clean`
26
28
27
29
-*On Windows:*
28
30
-- Remove the directories `/.git`, `/.github`, `/demo-app` & `/test`
29
31
-- Remove the files `.travis.yml`, `jest.json` & `wdio.BUILD.conf.js`
30
32
-- Remove all the demo features from the `/src/features` directory
31
33
32
-
4. Install the dependencies (`npm install` or `yarn install`)
34
+
4. Install the dependencies (`yarn install`)
33
35
34
36
Now you are ready to write your own features.
35
37
@@ -76,13 +78,13 @@ query after doing a search. As you can see, it is pretty simple and understandab
76
78
Start the local web server:
77
79
78
80
```sh
79
-
$ npm run-script local-webserver
81
+
$ yarn run local-webserver
80
82
```
81
83
82
84
To run your tests just call the [WDIO runner](http://webdriver.io/guide/testrunner/gettingstarted.html):
83
85
84
86
```sh
85
-
$ wdio
87
+
$ yarn run wdio
86
88
```
87
89
88
90
_please note_ The WDIO runner uses the configuration file `wdio.conf.js` by default.
@@ -117,14 +119,14 @@ Your environment-specific config file will get merged into the default config fi
117
119
To run a test in a specific environment just add the desired configuration file as the first parameter:
118
120
119
121
```sh
120
-
$ wdio wdio.STAGING.conf.js
122
+
$ yarn run wdio wdio.STAGING.conf.js
121
123
```
122
124
123
125
# Running single feature
124
126
Sometimes its useful to only execute a single feature file, to do so use the following command:
125
127
126
128
```sh
127
-
$ wdio --spec ./test/features/select.feature
129
+
$ yarn run wdio -- --spec ./test/features/select.feature
128
130
```
129
131
130
132
@@ -140,7 +142,7 @@ Feature: ...
140
142
To run only the tests with specific tag(s) use the `--tags=` parameter like so:
141
143
142
144
```sh
143
-
$ wdio --tags=@Tag,@AnotherTag
145
+
$ yarn run wdio -- --tags=@Tag,@AnotherTag
144
146
```
145
147
146
148
You can add multiple tags separated by a comma
@@ -205,8 +207,9 @@ Check out all predefined snippets. You can see how they get used in [`sampleSnip
205
207
-`there is (an|no) element "([^"]*)?" on the page` <br>Check if a element (does not) exist
206
208
-`the title is( not)* "([^"]*)?"` <br>Check the title of the current browser window/tab
207
209
-`the element "([^"]*)?" contains( not)* the same text as element "([^"]*)?"` <br>Compaire the text of two elements
208
-
-`the (element|inputfield) "([^"]*)?"( not)* contains the text "([^"]*)?"` <br>Check if a element contains the given text
209
-
-`the (element|inputfield) "([^"]*)?"( not)* contains any text` <br>Check if a element does not contain any text
210
+
-`the element "([^"]*)?"( not)* contains the text "([^"]*)?"` <br>Check if a element contains the given text
211
+
-`the element "([^"]*)?"( not)* contains any text` <br>Check if a element does not contain any text
212
+
-`the element "([^"]*)?" is( not)* empty` <br>Check if a element is empty
210
213
-`the page url is( not)* "([^"]*)?"` <br>Check the url of the current browser window/tab
211
214
-`the( css)* attribute "([^"]*)?" from element "([^"]*)?" is( not)* "([^"]*)?"` <br>Check the value of a element's (css) attribute
212
215
-`the cookie "([^"]*)?" contains( not)* the value "([^"]*)?"` <br>Check the value of a cookie
@@ -225,9 +228,9 @@ Check out all predefined snippets. You can see how they get used in [`sampleSnip
225
228
-`I expect that element "([^"]*)?" is( not)* within the viewport` <br>Check if a certain element is within the current viewport
226
229
-`I expect that element "([^"]*)?" does( not)* exist` <br>Check if a certain element exists
227
230
-`I expect that element "([^"]*)?"( not)* contains the same text as element "([^"]*)?"` <br>Compare the text of two elements
228
-
-`I expect that (element|inputfield) "([^"]*)?"( not)* contains the text "([^"]*)?"` <br>Check if a element or input field contains the given text
229
-
-`I expect that (element|inputfield) "([^"]*)?"( not)* contains any text` <br>Check if a element or input field contains any text
230
-
-`I expect that (element|inputfield) "([^"]*)?" is( not)* empty` <br>Check if a element or input field is empty
231
+
-`I expect that element "([^"]*)?"( not)* contains the text "([^"]*)?"` <br>Check if a element or input field contains the given text
232
+
-`I expect that element "([^"]*)?"( not)* contains any text` <br>Check if a element or input field contains any text
233
+
-`I expect that element "([^"]*)?" is( not)* empty` <br>Check if a element or input field is empty
231
234
-`I expect that the url is( not)* "([^"]*)?"` <br>Check if the the URL of the current browser window/tab is a certain string
232
235
-`I expect that the path is( not)* "([^"]*)?"` <br>Check if the path of the URL of the current browser window/tab is a certain string
233
236
-`I expect the url to( not)* contain "([^"]*)?"` <br>Check if the URL of the current browser window/tab contains a certain string
"clean": "read -p \"Are you sure you want to clean the project? [y/n] \"-n 1 -r; if [[ $REPLY =~ ^[Yy]$ ]]; then sudo rm -R .git .github demo-app test .codeclimate.yml .travis.yml jest.json wdio.BUILD.conf.js src/features/**; fi",
7
+
"clean": "read -p \"Are you sure you want to clean the project? [y/n] \"REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then rm -R .git .github demo-app test .codeclimate.yml .travis.yml jest.json wdio.BUILD.conf.js src/features/**; fi",
8
8
"local-webserver": "http-server ./demo-app -s",
9
9
"test": "npm run test:validate && npm run test:unit && npm run test:features",
Copy file name to clipboardExpand all lines: src/features/githubSearch.feature.pending
+1-1
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,7 @@ Scenario: search for webdriverio repository
15
15
And I press "Space"
16
16
And I add "selenium" to the inputfield ".input-block"
17
17
When I submit the form "#search_form"
18
-
Then I expect that inputfield ".input-block" contains the text "webdriverio selenium"
18
+
Then I expect that element ".input-block" contains the text "webdriverio selenium"
19
19
And I expect that element ".repo-list-item:first-child > .repo-list-description" contains the text "Webdriver/Selenium 2.0 JavaScript bindings for Node.js"
0 commit comments