https://github.com/qavajs/steps-wdio
Collection of WDIO steps for qavajs framework
https://github.com/qavajs/steps-wdio
qa test-automation testing
Last synced: 6 months ago
JSON representation
Collection of WDIO steps for qavajs framework
- Host: GitHub
- URL: https://github.com/qavajs/steps-wdio
- Owner: qavajs
- License: mit
- Created: 2022-06-12T09:10:01.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-11-01T09:28:19.000Z (over 1 year ago)
- Last Synced: 2024-11-01T10:24:19.723Z (over 1 year ago)
- Topics: qa, test-automation, testing
- Language: TypeScript
- Homepage:
- Size: 1.43 MB
- Stars: 15
- Watchers: 1
- Forks: 4
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://badge.fury.io/js/@qavajs%2Fsteps-wdio)
# @qavajs/steps-wdio
**`@qavajs/steps-wdio`** provides a comprehensive set of pre-built step definitions for [qavajs](https://github.com/qavajs/qavajs), powered by [webdriver.io](https://webdriver.io/).
It enables easy and efficient browser automation in a behavior-driven development (BDD) style using Cucumber syntax.
## Features
- Predefined steps for web automation using webdriver.io
- Seamless integration with `@qavajs/core`
- Support for dynamic locators and parameters
- Built-in assertions and synchronization steps
- Easily extendable for custom needs
## Installation
```
npm install @qavajs/steps-wdio
```
## Configuration
```typescript
import App from './page_object';
export default {
require: [
'node_modules/@qavajs/steps-wdio/index.js'
],
browser: {
timeout: {
present: 10000,
visible: 20000,
clickable: 15000,
page: 10000,
implicit: 0, //wdio implicit wait for element,
element: 2000,//timeout to element to be accesible,
value: 5000, // expect value timeout
valueInterval: 500 //expect value interval
},
capabilities: {
browserName: 'chrome'
}
},
pageObject: new App()
}
```
## Screenshots
@qavajs/steps-wdio has build-in capability to take screenshot on particular event. If you need to add
screenshot to your report add `screenshot` property to profile config.
Supported events:
- onFail
- beforeStep
- afterStep
```typescript
export default {
browser: {
capabilities: {
browserName: 'chrome'
},
screenshot: {
event: ['onFail']
}
}
}
```
## Snapshot
@qavajs/steps-wdio has build-in capability to take page snapshot on particular event.
Supported events:
- onFail
- beforeStep
- afterStep
```typescript
export default {
browser: {
capabilities: {
browserName: 'chrome'
},
snapshot: {
event: ['onFail']
}
}
}
```
## reuseSession
`reuseSession` flag allows to share session between tests in frames of process. But setting of this flag
transfer session control to user.
```javascript
export default {
browser: {
reuseSession: true
}
}
```