Watai (Web Application Testing Automation Infrastructure) is a declarative web integration testing framework.
It is both a test runner engine and a set of architectural patterns that help front-end ops-conscious developers write maintainable and solid end-to-end tests. These tests automate web application navigation through actual browsers, checking whether such interactions present the expected information to the end users along the way, including through asynchronous operations.
This allows to automate demonstration of features, to detect regressions when updating code and, since the same tests can be run in almost any browser, to easily check cross-browser functional support.
➥ Read more about what is Watai.
What a test looks like
Our 10-minutes tutorial walks you through an example to introduce all concepts. You don't even need to install the software to do it.
npm install --global selenium-server watai
If you're not familiar with
npm install, read the full installation guide :)
Let’s make sure you’re fully ready to use Watai by typing:
- Enforcement of a highly decoupled, component-based architecture for maintainable tests.
- Out-of-the-box support for async operations (AJAX…), as well as much more resilience than WebDriver, whose failures are wrapped.
- Simple cascading configuration makes sharing tests across environments (dev, CI, prod) very easy.
- Aiming for helpful error messages.
- High quality code and developer documentation, so that you can actually fix things or add functionality without depending on the original developer.
➥ Read more about how Watai is different from other integration testing tools.
The code for this software is distributed under an AGPL license. That means you may use it to test any type of software, be it free or proprietary. But if you make any changes to the test engine itself (i.e. this library), even if it is not redistributed and provided only as a webservice, you have to share them back with the community. Sounds fair? :)
Contact the author if you have any specific need or question regarding licensing.