WebdriverIO With CucumberBDD

screenshot of WebdriverIO With CucumberBDD

This repository contains test automation boilerplate code for WebdriverIO-v8 / Cucumber (v8.x)

Overview

This repository contains a collection of sample webdriverIO-v8 projects that demonstrate how to use the tool and develop automation scripts using the CucumberJS BDD framework. It supports Typescript and provides utilities for reading data from MS-Excel and executing SQL statements. The project generates Allure, JSON, Junit/Xunit, and Spec reporters. Please note that the wdio reporting module of JSON and Junit/Xunit is disabled in this version due to compatibility issues with V8.

Features

  • Supports webdriverIO-v8 (Selenium - Node.js/JavaScript)
  • Uses the CucumberJS BDD framework
  • Uses chromedriver NPM package for communication with the browser directly
  • Supports Typescript
  • Provides sample utilities for reading data from MS-Excel
  • Executes SQL statements to any database (RDBMS such as Oracle, TeraData, MySQL, Vertica)
  • Generates Allure, JSON, Junit/Xunit, and Spec reporters

Summary

The webdriverIO-v8 boilerplate code with Cucumber BDD is a collection of sample projects that demonstrate the usage of the webdriverIO tool and the development of automation scripts using the CucumberJS BDD framework. It supports webdriverIO-v8 and offers various features such as Typescript support, utilities for reading data from MS-Excel, and the ability to execute SQL statements. The project also generates different types of reporters. Installation instructions are provided for setting up the project, and various options for running the test suite are available, including local execution and integration with SauceLabs, BrowserStack, and LambdaTest.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.