Book Image

A Frontend Web Developer’s Guide to Testing

By : Eran Kinsbruner
3 (1)
Book Image

A Frontend Web Developer’s Guide to Testing

3 (1)
By: Eran Kinsbruner

Overview of this book

Testing web applications during a sprint poses a challenge for frontend web app developers, which can be overcome by harnessing the power of new, open source cross-browser test automation frameworks. This book will introduce you to a range of leading, powerful frameworks, such as Selenium, Cypress, Puppeteer, and Playwright, and serve as a guide to leveraging their test coverage capability. You’ll learn essential concepts of web testing and get an overview of the different web automation frameworks in order to integrate them into your frontend development workflow. Throughout the book, you'll explore the unique features of top open source test automation frameworks, as well as their trade-offs, and learn how to set up each of them to create tests that don't break with changes in the app. By the end of this book, you'll not only be able to choose the framework that best suits your project needs but also create your initial JavaScript-based test automation suite. This will enable fast feedback upon code changes and increase test automation reliability. As the open source market for these frameworks evolves, this guide will help you to continuously validate your project needs and adapt to the changes.
Table of Contents (19 chapters)
1
Part 1 – Frontend Web Testing Overview
7
Part 2 – Continuous Testing Strategy for Web Application Developers
11
Part 3 – Frontend JavaScript Web Test Automation Framework Guides

Getting started with Puppeteer

As explained in Chapter 3, Top Web Test Automation Frameworks, to get started with the Puppeteer framework, you need to install the node package through the following command line:

npm install puppeteer 

Once the preceding package, together with its dependencies, is installed, you are ready to start writing and running your first test locally in either Headed or Headless mode.

To see the full documentation of the Puppeteer framework along with code samples, API descriptions, release notes, and more, please see https://pptr.dev/.

Like the Playwright framework, Puppeteer also drives its automation through the Browser object, which then drills down into the multiple browserContext sessions that can operate on multiple pages, extensions (https://pptr.dev/#?product=Puppeteer&version=v13.1.0&show=api-working-with-chrome-extensions), and frames.

Figure 12.1 – Google Puppeteer high-level architecture diagram

...