1. testcafe-hammerhead
A powerful web-proxy used as a core for the TestCafe testing framework (https://github.com/DevExpress/testcafe).
testcafe-hammerhead
Package: testcafe-hammerhead
Created by: DevExpress
Last modified: Thu, 28 Dec 2023 09:28:11 GMT
Version: 31.7.1
License: MIT
Downloads: 1,197,676
Repository: https://github.com/DevExpress/testcafe-hammerhead

Install

npm install testcafe-hammerhead
yarn add testcafe-hammerhead

testcafe-hammerhead

testcafe-hammerhead is a powerful Web proxy used as a core for the TestCafe testing framework.

Core Concepts

testcafe-hammerhead is a URL-rewriting proxy. This means that it rewrites all properties of the appropriate JavaScript objects that contain a URL value (Location, HTMLLinkElement.href, etc). You can see it if you open a proxied page, invoke the browser's DevTools and inspect any element.

In addition, the proxied web page does not know that it is opened under a proxy. The proxy intercepts access attempts to all URL-containing properties and provides the original values.

First Look

  1. Clone the Hammerhead repository
     git clone https://github.com/DevExpress/testcafe-hammerhead.git
    
  2. Go to the testcafe-hammerhead folder
     cd testcafe-hammerhead
    
  3. Install the dependencies
     npm install
    
  4. Run the Hammerhead playground to see our proxy in action
     node node_modules/gulp/bin/gulp http-playground
    

This opens a playground page where you can specify a webpage to proxy. Enter the page URL and hit Proxy!.

Features

  • HTTP/HTTPS requests
  • WebSockets, EventSource
  • file upload
  • request events (onRequest, onResponse)
  • bypassing requests
  • custom UI on a web page

Reporting Issues and Contributing

Read our Contributing Guide to learn how to contribute to the project.

Build Status

Sauce Test Status

Health Monitor

Dependencies

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code