TestCafe: Automated browser testing
TestCafe is a Node.js tool to automate end-to-end web testing. It is built for testing the modern web development stack.
- Works on all popular environments: TestCafe runs on Windows, MacOS, and Linux. It supports desktop, mobile, remote and cloud browsers (UI or headless).
- 1 minute to set up: You do not need WebDriver or any other testing software. Install TestCafe with one command, and you are ready to test:
npm install -g testcafe
- Free and open source: TestCafe is free to use under the MIT license. Plugins provide custom reports, integration with other tools, launching tests from IDE, etc. You can use the plugins made by the GitHub community or make your own.
Features
Stable tests and no manual timeouts
TestCafe automatically waits for page loads and XHRs before the test starts and after each action. It also features smart test actions and assertions that wait for page elements to appear. You can change the maximum wait time. If elements load faster, tests skip the timeout and continue.
Latest JS and TypeScript support
TestCafe supports the latest JavaScript features, including ES2017 (for example, async/await). You can also use TypeScript if you prefer a strongly typed language.
Detects JS errors in your code
TestCafe reports JS errors that it finds on the webpage. Tests automatically fail because of that. However, you can disable this.
Concurrent tests launch
TestCafe can open multiple instances of the same browser to run parallel tests which decreases test execution time.
PageObject pattern support
The TestCafe’s Test API
includes a high-level selector library, assertions, etc. You can combine them to implement readable tests with the PageObject pattern.
Easy to include in a continuous integration system
You can run TestCafe from a console, and its reports can be viewed in a CI system’s interface (TeamCity, Jenkins, Travis & etc.)
-Rushi