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 the Microsoft Playwright framework

Playwright is one of the newest but fastest-growing cross-browser test automation frameworks. Built by the same team that built Puppeteer, Playwright is also a CDP-based framework. As opposed to Google's Puppeteer, Playwright supports multiple languages and most leading browsers. With Playwright, developers can script in JavaScript, TypeScript, Python, Java, and .NET, and execute across most leading browsers including Chrome, Firefox, Edge, and WebKit Safari. The Playwright framework can be executed in headed or headless mode and can also support mobile viewport emulation (https://playwright.dev/docs/emulation#devices) with various user agents, as opposed to Cypress, for example.

From an architecture perspective, Playwright uses the CDP to interact with the browsers, drive actions such as browsers' pages inputs, scan for security, monitor network processes, and much more. A thorough architectural review is presented...