Forward Proxy 端到端测试框架,验证 HTTP/HTTPS 代理的协议路由行为。
pip3 install -r requirements.txt编辑 framework/proxy/config.yaml:
proxy:
host: 127.0.0.1
port: 8090
environment: local也可以直接填写完整 URL:
proxy:
url: "http://127.0.0.1:8090"# 快速冒烟(排除慢速测试)
python3 -m pytest -m "not slow" -v
# 全部测试
python3 -m pytest -v
# 按协议筛选
python3 -m pytest -m http -v
python3 -m pytest -m https -v
# 只跑慢速(连接压测)
python3 -m pytest -m slow -v
# 跑单个 case
python3 -m pytest tests/https/test_https.py::TestHttp11Tls12::test_get -vtests/
├── http/
│ └── test_http.py # HTTP 明文转发
└── https/
└── test_https.py # HTTPS TLS 路由
| 类 | 客户端 | 测试内容 |
|---|---|---|
TestHttp11 |
HTTP/1.1 | GET、长/短连接压测 |
TestHttp2 |
HTTP/2(h2c 降级) | GET(验证降级至 HTTP/1.1)、长/短连接压测 |
| 类 | 客户端 | 测试内容 |
|---|---|---|
TestHttp11Tls12 |
HTTP/1.1 + TLS 1.2 | GET/POST/PUT/DELETE、Header 转发、并发、长/短连接压测 |
TestHttp2Tls12 |
HTTP/2 + TLS 1.2 | GET/POST、长/短连接压测 |
TestHttp11Tls13 |
HTTP/1.1 + TLS 1.3 | GET/POST、长/短连接压测 |
TestHttp2Tls13 |
HTTP/2 + TLS 1.3 | GET/POST、长/短连接压测 |
| 标记 | 说明 |
|---|---|
http |
HTTP 明文测试 |
https |
HTTPS TLS 测试 |
slow |
慢速压测(100 次请求) |
测试失败时 pytest 自动展示捕获日志。所有日志完整写入 reports/pytest.log。