Modern Web Testing with TestCafe
Get to grips with end-to-end web testing with TestCafe and JavaScript
Dmytro Shpakovskyi
- 168 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
Modern Web Testing with TestCafe
Get to grips with end-to-end web testing with TestCafe and JavaScript
Dmytro Shpakovskyi
About This Book
A no-nonsense guide to getting started with TestCafe quickly by building a complete test suite while learning the core concepts of test automation with TestCafe
Key Features
- Build a proof-of-concept project to demonstrate your familiarity with TestCafe
- Discover useful tips and best practices for building production-ready and fault-tolerant tests
- Write clean and maintainable tests by refactoring your codebase using PageObject pattern
Book Description
TestCafe is an open source end-to-end testing framework that combines unmatched ease of use with advanced automation and robust built-in stability mechanisms. This book is a comprehensive, project-based introduction to TestCafe that will show you how to use the TestCafe framework and enable you to write fast and reliable tests; plus you'll have a proof of concept ready to demonstrate the practical potential of TestCafe.
You'll begin by learning how to write end-to-end web tests using the TestCafe syntax and features of the TestCafe framework. You'll then go from setting up the environment all the way through to writing production-ready tests. You'll also find out how to build a sample set of tests in a step-by-step manner and use TestCafe to log in to the website, verify the elements present on different pages, create/delete entities, and run custom JavaScript code. As you advance, you'll delve into several stages of refactoring that will take you through the showcase setup/teardown and PageObject patterns. While this test suite is relatively simple to build, it showcases some of the most prominent features of TestCafe. Finally, this TestCafe book will show you how the tests can be run on a free and simple-to-use website, without requiring you to build and deploy your own servers or backend services.
By the end of this book, you'll have learned how to write and enhance end-to-end tests with TestCafe to solve real-world problems and deliver results.
What you will learn
- Understand the basic concepts of TestCafe and how it differs from classic Selenium
- Find out how to set up a TestCafe test environment
- Run TestCafe with command-line settings
- Verify and execute TestCafe code in the browser
- Automate end-to-end testing with TestCafe using expert techniques
- Discover best practices in TestCafe development and learn about the future roadmap of TestCafe
Who this book is for
The book is for QA professionals, test engineers, software engineers, and test automation enthusiasts looking for hands-on guidance on learning about TestCafe. This book is also great for full-stack developers who want to learn more about new tools for testing their code. The book assumes a basic understanding of JavaScript, Node.js, HTML, CSS, and some simple Bash commands.
Frequently asked questions
Information
Chapter 1: Why TestCafe?
- Introducing TestCafe.
- Exploring the main features of TestCafe.
- Comparing TestCafe and Selenium.
- Reviewing the test project we will build.
Introducing TestCafe
- Launching applications before tests.
- Launching different browsers.
- Running tests.
- Taking screenshots.
- Outputting test results.
Exploring the main features of TestCafe
- Pretty much all TestCafe needs to run is a browser and Node.js configured on your machine, so there is minimal setup.
- TestCafe can run tests in headless mode (on Chrome or Firefox) without a need to render a Document Object Model (DOM). This feature is extremely useful when running tests on any Continuous Integration (CI) system.
- TestCafe supports all main operating systems, including Windows, macOS, and Linux.
- The officially supported browsers of TestCafe are Google Chrome (Stable, Beta, Dev, and Canary), Internet Explorer (11+), Microsoft Edge (Legacy and Chromium-based), Mozilla Firefox, Safari, Google Chrome mobile, and Safari mobile – so it is cross-browser. You can find a full list of supported browsers and their aliases at https://devexpress.github.io/testcafe/documentation/guides/concepts/browsers.html#officially-supported-browsers.
- Tests can be written in the latest JavaScript (ES6+), TypeScript, or CoffeeScript formats (we will be using JavaScript to demonstrate this in the upcoming chapters).
- Clear and flexible API with support of the PageModel pattern (we will see how this works in Chapter 6, Refactoring with PageObjects).
- Stable tests due to the smart assertion and automatic waiting mechanisms (this will be discussed in Chapter 2, Exploring TestCafe Under the Hood).
- TestCafe has a lot of free custom plugins: cloud browser providers and emulators (SauceLabs, BrowserStack, CrossBrowserTesting, and so on), framework-specific ...