258 lines
7.9 KiB
JSON
258 lines
7.9 KiB
JSON
{
|
|
"reportName": "后台管理测试环境 HTTP API 验收",
|
|
"marker": "ADMIN-API-20260808030949923",
|
|
"gateway": "http://8.163.30.128:9000",
|
|
"generatedAt": "2026-08-08T03:09:50.497Z",
|
|
"startedAt": "2026-08-08T03:09:49.923Z",
|
|
"success": true,
|
|
"fatal": null,
|
|
"summary": {
|
|
"total": 12,
|
|
"passed": 12,
|
|
"failed": 0
|
|
},
|
|
"modules": [
|
|
{
|
|
"name": "supplemental",
|
|
"startedAt": "2026-08-08T03:09:50.302Z",
|
|
"finishedAt": "2026-08-08T03:09:50.497Z",
|
|
"success": true,
|
|
"passed": 11,
|
|
"failed": 0,
|
|
"fatal": null
|
|
}
|
|
],
|
|
"scenarios": [],
|
|
"deploymentBlockers": [],
|
|
"createdResources": {},
|
|
"excluded": [
|
|
{
|
|
"scope": "dashboard",
|
|
"reason": "首页为静态演示数据,不调用后端 API"
|
|
},
|
|
{
|
|
"scope": "hidden-prototypes",
|
|
"reason": "隐藏原型页面尚无已确认后端契约"
|
|
}
|
|
],
|
|
"securityNote": "报告不保存登录密码、Access Token、Refresh Token、图片二进制或 OCR 原文全文。",
|
|
"steps": [
|
|
{
|
|
"module": "authentication",
|
|
"scenario": null,
|
|
"name": "平台管理员登录",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "POST",
|
|
"path": "/api/auth/login"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "1f1e9c3b-11bb-4931-a6dd-fa576b7c95b5, abee7733-84b8-457d-b55f-91b7aa54f42d",
|
|
"traceId": "b0a64f960ec54ff89eb325abb5cc1c8d",
|
|
"evidence": "",
|
|
"checkedAt": "2026-08-08T03:09:50.301Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "order-service 状态响应使用统一成功体",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/orders/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "a5f466bf-ae64-4aa5-95ea-8d1968682163, dc93264c-bc52-42c6-a7e1-3dd7adff8559",
|
|
"traceId": "0c23c4de34694a139a2c895073ee0934",
|
|
"evidence": "HTTP=200, code=200",
|
|
"checkedAt": "2026-08-08T03:09:50.344Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "order-service 状态字段完整且 readiness 语义明确",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/orders/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "a5f466bf-ae64-4aa5-95ea-8d1968682163, dc93264c-bc52-42c6-a7e1-3dd7adff8559",
|
|
"traceId": "0c23c4de34694a139a2c895073ee0934",
|
|
"evidence": "service=order-service, status=UP, readiness=UP",
|
|
"checkedAt": "2026-08-08T03:09:50.344Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "firstleg-service 状态响应使用统一成功体",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/first-leg/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "04765fab-c4bf-4c63-af3d-2a7d6a3f955e, 89a82465-cb1e-484d-b78f-5844bb9d8f81",
|
|
"traceId": "f6e4f3759e6841769a8e905154d5f5f8",
|
|
"evidence": "HTTP=200, code=200",
|
|
"checkedAt": "2026-08-08T03:09:50.371Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "firstleg-service 状态字段完整且 readiness 语义明确",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/first-leg/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "04765fab-c4bf-4c63-af3d-2a7d6a3f955e, 89a82465-cb1e-484d-b78f-5844bb9d8f81",
|
|
"traceId": "f6e4f3759e6841769a8e905154d5f5f8",
|
|
"evidence": "service=firstleg-service, status=UP, readiness=UP",
|
|
"checkedAt": "2026-08-08T03:09:50.371Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "file-service 状态响应使用统一成功体",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/files/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "c14fe096-d5ae-447f-96ee-37802b84b58a, 439bfbc2-6441-4087-9962-53afff6c1f5f",
|
|
"traceId": "1fca0eae5e20493582ab64ce34c30181",
|
|
"evidence": "HTTP=200, code=200",
|
|
"checkedAt": "2026-08-08T03:09:50.400Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "file-service 状态字段完整且 readiness 语义明确",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/files/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "c14fe096-d5ae-447f-96ee-37802b84b58a, 439bfbc2-6441-4087-9962-53afff6c1f5f",
|
|
"traceId": "1fca0eae5e20493582ab64ce34c30181",
|
|
"evidence": "service=file-service, status=UP, readiness=UP",
|
|
"checkedAt": "2026-08-08T03:09:50.400Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "warehouse-service 状态响应使用统一成功体",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/warehouses/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "b20712d9-2747-412b-9b98-f16e68e09b6a, 4206f98c-81e1-4bfc-b5ba-d679e825e211",
|
|
"traceId": "1900c4aea06346d49219bcabbe1647de",
|
|
"evidence": "HTTP=200, code=200",
|
|
"checkedAt": "2026-08-08T03:09:50.439Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "warehouse-service 状态字段完整且 readiness 语义明确",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/warehouses/status"
|
|
},
|
|
"http": 200,
|
|
"code": "200",
|
|
"message": "success",
|
|
"requestId": "b20712d9-2747-412b-9b98-f16e68e09b6a, 4206f98c-81e1-4bfc-b5ba-d679e825e211",
|
|
"traceId": "1900c4aea06346d49219bcabbe1647de",
|
|
"evidence": "service=warehouse-service, status=UP, readiness=UP",
|
|
"checkedAt": "2026-08-08T03:09:50.439Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "平台接口未携带令牌返回 401",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/orders/status"
|
|
},
|
|
"http": 401,
|
|
"code": "A0401",
|
|
"message": "未登录或令牌已失效",
|
|
"requestId": "feab15f3-239",
|
|
"traceId": null,
|
|
"evidence": "HTTP=401, code=A0401",
|
|
"checkedAt": "2026-08-08T03:09:50.468Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "平台接口伪造令牌返回 401",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/orders/status"
|
|
},
|
|
"http": 401,
|
|
"code": "A0401",
|
|
"message": "未登录或令牌已失效",
|
|
"requestId": "5a78b8b2-240",
|
|
"traceId": null,
|
|
"evidence": "HTTP=401, code=A0401",
|
|
"checkedAt": "2026-08-08T03:09:50.481Z"
|
|
},
|
|
{
|
|
"module": "supplemental",
|
|
"scenario": null,
|
|
"name": "未认证请求不返回业务成功码",
|
|
"passed": true,
|
|
"deploymentBlocker": false,
|
|
"request": {
|
|
"method": "GET",
|
|
"path": "/api/platform/v1/orders/status"
|
|
},
|
|
"http": 401,
|
|
"code": "A0401",
|
|
"message": "未登录或令牌已失效",
|
|
"requestId": "feab15f3-241",
|
|
"traceId": null,
|
|
"evidence": "HTTP=401, code=A0401",
|
|
"checkedAt": "2026-08-08T03:09:50.497Z"
|
|
}
|
|
]
|
|
}
|