Description
Description
Wdio-workflo helps you write functional system tests for web applications.
It increases the reusability, maintainability and analysability of your tests.
The framework is based on, extends and customizes the fabulous webdriverio-v4.
Written in TypeScript
Written in TypeScript
Harness the advantages of static typing! Your tests will be more robust than plain JavaScript and you will get better IDE support (List Members, Parameter Info, Quick Info, Complete Word...).
Uses Selenium Webdriver
Uses Selenium Webdriver
Selenium is one of the most well known tools for browser automation. It is completely for free, has a huge community and contrary to alternatives like Cypress, you can test all major browser in multiple windows and tabs.
Features
- Formulate your requirements in spec files using Gherkin Language (Given-When-Then)
- Testcases validate the acceptance criteria defined within your specs
- All test logic is encapsulated in steps written in natural language to increase reusability and readability
- Provides a sophisticated page object architecture to improve the maintainability and reusability of your tests
- Custom matcher functions help you analyse errors by providing meaningful error messages and stack traces
- Includes an XPath builder to construct complex XPath selectors
- All necessary tools, services and packages are preconfigured and work out of the box
- A console-based spec report for development and a graphic allure report for continuous integration
- Automatically takes screenshots for errors and validation failures to facilitate analysibility
Learn how
Learn how
If you are new to wdio-workflo, you probably want to head straight for the Getting Started guide.
At wdio-workflo-example, there are code examples demonstrating the usage of wdio-workflo.
Furthermore, the API Docs provide detailed information about each of the framework's building blocks.
Wdio-workflo is the result of my master's thesis "Properties of Automation Solutions for Functional System Tests of React Web Applications",
which you can download (in German) if you are interested in the theoretical foundations of wdio-workflo.
Why you should or shouldn't use Wdio-Workflo
Why you should or shouldn't use Wdio-Workflo
Compared to webdriverio-v4, wdio-workflo improves existing functionality and adds new features but also imposes some additional restrictions.
The following list helps you decide whether you should use wdio-workflo or stick with the original webdriverio.
Restrictions
- Wdio-workflo is currently based on version 4 of webdriverio. You cannot use features added in version 5.
- Wdio-workflo works exclusively with the Jasmine test framework and supports only spec and allure reports.
- Wdio-workflo does not support running tests in different browsers at the same time.
- Wdio-workflo only works with XPath selectors. CSS selectors are not supported.
- If you only need a few small tests, wdio-workflo might introduce too much unnecessary overhead code.
Improvements / New Features
- All services/reporters/test frameworks used by wdio-workflo are preconfigured and work out of the box.
- Test results not only show the status of your tests, but also tell you which requirements/acceptance criteria were not fulfilled.
- Wdio-workflo is shipped with base classes for a sophisticated page object architecture which can be used out of the box.
- Wdio-workflo's step functions help you write complex testcases in natural language and allow you to reuse test logic.
- Wdio-workflo improves error handling and includes custom expectation matchers to provide meaningful error messages.
- Allure reports include error screenshots and stacktraces as well as detailed descriptions of all steps and their parameters.