[Open Source] An Efficient and Reliable Automated Testing Platform That Improves Efficiency and Reduces Testing Costs

Open SourceProcess Management
2026-06-28 03:50 2 次浏览 • 0 次下载 0KB
[Open Source] An Efficient and Reliable Automated Testing Platform That Improves Efficiency and Reduces Testing Costs

1. Project Overview

Yangfan Testing Platform

Yangfan Testing Platform is an efficient and reliable automated testing platform designed to help teams improve testing efficiency and reduce testing costs. The platform includes functional modules such as test case management, scheduled tasks, and execution records. It supports multiple types of test cases, currently including API testing (HTTP and gRPC protocols) and performance testing. It is also customizable and flexible enough to meet the needs of different scenarios. The test case management module supports basic operations such as uploading, editing, copying, and deleting test cases, as well as advanced features such as batch execution and concurrent execution. Through test case settings, users can configure basic information, runtime settings, environment variables, and other parameters to flexibly control test execution. The scheduled task module supports referencing one or more test cases for automatic execution, with features such as concurrent execution and task tags. CI/CD integration is planned for future releases to enable fully automated testing workflows. Yangfan Testing Platform also provides an execution records module that records test case results and supports viewing detailed information such as test reports and execution logs, making it easier to analyze and optimize test results.

2. Open Source License

Licensed under Apache-2.0

3. Screenshots

4. Feature Overview

Supported Features

  • User Management
  • Project Management
  • Environment Management
  • API Management
  • Test Case Management
  • Data Transfer Between Test Cases: Request Header and Parameter Export
  • Scheduled Tasks
  • Run Scheduled Tasks by Tags (Can Be Used for Full Regression Testing During Releases)
  • Concurrent Execution of Scheduled Tasks. Configure the concurrency level based on your needs to reduce waiting time
  • Generate Test Reports
  • Network performance collection: Can collect network link performance indicators (DNS resolution, TCP connection, SSL handshake, network transmission, etc.) in addition to scenario-based interface testing
  • Data-Driven Testing with parameterize
  • Python Function-Driven Testing
  • SQL Operations Supported
  • Visual Data Reports
  • Data-Driven Testing with parameterize and Page Operations
  • Go Function-Driven Testing
  • Support for More Protocols, Including WebSocket, TCP, RPC, and Others
  • Supported Protocols: HTTP/2, gRPC
  • Support Test Case Import from JSON, Postman, Swagger, and Other Formats
  • Performance Testing
  • Web UI Automated Testing

5. Tech Stack

  • The frontend and backend are built on gin-vue-admin v2.5.3, a full-stack development platform based on Gin + Vue.
  • The testing engine uses HttpRunner V4, supporting network protocols such as HTTP(S)/HTTP2/WebSocket/RPC and covering testing types including API testing, performance testing, and digital experience monitoring. It is easy to use, feature-rich, and offers an extensive plugin mechanism and high extensibility.
  • Integrating HttpRunner V4 into the Testing Platform

Deployment Method

Environment Setup: 1. Create a new database and import the docs/sql/yangfan.sql file. 2. Modify the MySQL database and Feishu login (fs) configurations in server/config.yaml. 3. Configure VITE_FS_LOGIN and VITE_FS_APP_ID in web/.env.development and web/.env.production. 4. Administrator account: yangfan, Password: 123456

Local Debugging

Project Deployment

Frontend

Run npm run build in the web directory to generate the dist folder. Upload the dist folder to the server. Nginx is recommended for reverse proxy configuration. Set up a proxy to forward requests to the backend.

Backend

For the first installation and startup, the Linux environment may lack pip required by HttpRunner, so steps 2–4 must be performed. For subsequent installations, only step 1 is required.

Run the start_server.sh script, with config pointing to config.production.yaml in the root directory. Open API Management and execute any one of the following modules once: API Management, Test Suites, Test Cases, or Scheduled Tasks. Then run the following command in the ./docs directory:
/root/.hrp/venv/bin/python3 get-pip.py Restart the service

Nginx Configuration


server {
    listen  8080;
    server_name localhost;

    #charset koi8-r;
    #access_log  logs/host.access.log  main;

    location / {
        root /usr/share/nginx/html/dist;
        add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
        try_files $uri $uri/ /index.html;
    }

    location /api {
        proxy_set_header Host $http_host;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        rewrite ^/api/(.*)$ /$1 break;  # Rewrite
        proxy_pass [http://127.0.0.1:8888](http://127.0.0.1:8888); # Set the proxy server protocol and address
     }
    location  /form-generator {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http\://127.0.0.1:8888;
    }
    location /api/swagger/index.html {
        proxy_pass [http://127.0.0.1:8888/swagger/index.html;
](http://127.0.0.1:8888/swagger/index.html;
)     }
 }

#1
资源直链https://github.com/test-instructor/yangfan/archive/refs/heads/main.zip
去下载
星河码客

发现和分享优质开源项目,传承互联网精神,为开发者服务。

关于本站

联系我们

微信/广告合作:ITcloub (备注星河码客)

免责声明:本站资源版权归原作者所有,仅供学习与交流。如有侵权,请通过「关于我们 - 侵权投诉」联系删除。

Powered by Nuxt · Deployed on Cloudflare