[Open Source] Automated Regression Testing Platform Based on Real Requests and Data, with Intelligent Replay Reports
![[Open Source] Automated Regression Testing Platform Based on Real Requests and Data, with Intelligent Replay Reports](https://yy123.ink/api/img/1782594562297-spmigk.jpg)
1. Project Overview

AREX
An API testing tool for traffic recording and playback, providing an automated regression testing platform based on real requests and data.
2. Open Source License
Licensed under Apache-2.0
3. Screenshots





4. Feature Overview
Platform Advantages
Low-cost
No code intrusion and virtually zero integration costs. No need to write test cases. High coverage can be maintained even with massive volumes of online requests. Instrumentation code is simple, with minimal performance overhead.
Diverse Testing Support
Supports write validation and verification of databases, message queues, and Redis data. It can even verify runtime in-memory data, without generating dirty data during testing.
Stable Test Case Execution
Supports automatic data collection and Mock for various mainstream technology frameworks. See: arex_java. It also supports local time and caching, accurately restoring the production execution environment during playback.
Rapid Reproduction of Online Issues
Supports one-click local debugging, enabling rapid local troubleshooting of online issues.
Safe and Stable
Code isolation is also supported, along with health management. When the system is under heavy load, data collection frequency is intelligently reduced or disabled.
Excellent Functional Testing Support
Supports test scripts and simple editing of collected data to implement tests with fixed test scenarios, avoiding the need to prepare large amounts of test data.
Platform Features
Solve the Problem of Difficult-to-Reproduce Online Issues
Online issues can be quickly reproduced and debugged in local testing and development environments.
Eliminate Environment Differences
Powerful Mock mechanism supporting Mock time and cached data.
Mock Data Is Editable
Meet Various Testing Requirements
Reduce Playback Noise
Supports global-level and API-level node exclusion configurations, as well as unordered array comparisons.
Intelligent Playback Reports
Aggregates differences based on JSON message paths, significantly improving troubleshooting efficiency. Covers all difference scenarios without overlooking any potential risks.
Supports write traffic validation without generating dirty data
Supports validation of data stored in databases, message queues, Redis, and other systems. It even supports validating in-memory runtime data, ensuring that no dirty data is generated during testing.
Testing Support
Standard API Testing
Send requests to APIs and evaluate their responses to ensure they meet specified requirements and function as expected. Features include developing, executing, validating, and managing test cases.
Comparison Testing
Send identical requests to APIs in different environments and compare their responses to verify whether the APIs function as expected after backend system restructuring or upgrades.
Regression Testing
Record real-world online user traffic and replay it in a test environment to achieve automated regression testing. This addresses challenges such as the difficulty of writing regression test cases, constructing test data, and low testing efficiency.
5. Tech Stack
Configure the Development Environment
Backend Projects
To make debugging more convenient, we can first deploy an AREX instance in our local environment using docker-compose. We can then use the DB and Redis from this environment as our development environment.
Front-end project
Development environment
|
Minimum |
Recommended |
|
|
node |
16.14 |
18 |
|
pnpm |
8 |
8 |
Tech Stack
-
React 18
-
AntDesign 5
-
Zustand
-
Emotion
-
i18n
-
pnpm
-
...
Directory Structure
More content, please refer to README.md document