Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Introduction - Hungryhub Automation Testing

Overview

A. Purpose

The primary purpose of automation testing at Hungryhub is to increase the efficiency, coverage, and speed of our software testing process. Automation testing allows us to perform consistent, repeatable tests to ensure software quality and reliability. By automating routine and complex tests, we can quickly identify defects, reduce manual testing efforts, and accelerate the feedback loop during development cycles. This ensures that new features are both functional and regression risks are minimized before production deployment.

B. Scope

Automation testing at Hungryhub is applied to several key areas to maximize its effectiveness

  • Regression Testing: Ensuring that existing functionalities work as expected after changes (such as enhancements or bug fixes) are introduced.
  • Smoke Testing: Conducted on major builds to ensure that the critical functionalities of the application are working as expected.
  • Integration Testing: Testing the interfaces between components and interactions with different parts of the system.
  • UI Testing: Focused on the graphical user interface to ensure elements are visible and function as intended under various conditions.
  • API Testing: Validating the logic, performance, and security of the application interfaces. This approach allows us to maintain high standards of software quality and reliability, supporting Hungryhub's commitment to delivering exceptional products to our customers.

Tools and Technologies

Our automation testing framework leverages several advanced tools and technologies designed to streamline our testing processes and improve our software's reliability and performance. Below is an overview of the primary tools and technologies we use

Testing ToolsPlaywright JShttps://playwright.dev/
RepositoryGithubWeb Automation Testing: https://github.com/hungryhub-team/hh-webautomation-testing
CI/CDGithub Action
Design PatternPage Object Model
Reporting and MetricsAllure Reporthttps://allurereport.org/

Environment Setup

Setting up a proper testing environment is crucial for ensuring the reliability and consistency of our automation tests. This section outlines the steps required to configure the necessary tools and environments for our testing processes.

Prerequisites

Before setting up the environment, ensure that the following prerequisites are met:

  • Node.js: Playwright JS requires Node.js. Ensure that you have Node.js installed. You can download it from Node.js official website.
  • Git: Required for version control and for cloning repositories. Download and install from Git's website.

Setting up Playwright JS

  1. Install Playwright: Install Playwright and its dependencies using npm. Open your command line interface and run:
npm i -D playwright
  1. Verify Installation: Verify that Playwright is installed correctly by running:
   npx playwright --version
  1. Browser Binaries: Playwright automatically downloads the necessary browser binaries for Chrome, Firefox, and WebKit. Ensure that these binaries are correctly installed by running the first test or using:
  npx playwright install
  1. How to Run Hungryhub Automation Testing