This book has been intended for Test Automation Engineers who want to learn cypress from scratch and implement it for achieving their test automation goals. Cypress is an extremely powerful test automation tool which automates modern browsers. It is packed with useful built-in features from Test Automation Framework perspective. The chapters in this book logically cover all these useful features and capabilities after initially covering an overview and installation of the tool.
Here is an overview of the chapters presented in this book.
It provides an overview of cypress and compares the features it provides with the market leader automation tool Selenium. As most test automation engineers have been implementing Selenium in their projects, this comparison will be very valuable
It covers installation of cypress and the pre-requisites. Powerful Java script Unit test framework Mocha and assertion library chai get shipped automatically with cypress. This chapter briefly covers writing tests in Mocha
It is all about Web Test Automation. It covers opening and navigating pages along with interacting with web elements like text boxes, command buttons, drop downs and check boxes etc. It also describes various types of waits available in cypress which are super important from test automation optimisation perspective
It covers advanced features available in cypress like Fixtures, cypress config, plugins, creating custom commands/tasks, command line test execution, Environment variables and Dashboard etc. It also additionally covers running of cypress tests from Jenkins CI/CD pipelines.
It covers setting up Behaviour Driven Development tests in cypress by leveraging the power of cucumber pre-processor. As BDD has been adopted by majority of organizations, it has been covered in-depth. It covers all aspects of BDD like Single and Bundled feature files, Cucumber and Regular expressions, Gherkin functions, Feature statements, Data table parameters, Hooks and Tagging implementation. Additionally, it covers executing specific features and tagged tests along with generating multiple types of reports like JSON, HTML and Allure.
It focuses on integration of cypress with Docker. It covers Docker components such as Docker client and server, Docker image, registry and containers along with the general set up of Docker. It also explains how single and multiple browser cypress tests can be executed via Docker.
It covers setting up cypress tests for all REST HTTP methods like GET, POST, PUT, PATCH and DELETE. It also introduces GRAPHQL which is an open source data query and manipulation language for APIs and compares it with REST.
It explains about the importance of Database testing and provides a recipe for integrating cypress with Postgres db. The same concept can be applied to other databases like SQL Server and Oracle etc.
It provides an overview of Accessibility testing and covers the integration of cypress with AXE which has become very popular in the accessibility testing space
It focuses on conducting Visual Testing in cypress by leveraging its integration with Percy
It covers building Client-side performance tests using lighthouse and measuring load time of a single user interaction. It’s important to note that integration of lighthouse is very easily achievable by installing Cypress-audit plugin.