| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /**
- * API 级 e2e 冒烟(远程后端 cfc.iwintrue.com)
- * ================================================================
- * 目的:一条命令自检「API 级 e2e 链路」是否健康:
- * 自注册拿 token → 调核心业务接口 → 断言 code=200。
- * 运行:npx playwright test -c playwright.config.api.js --project=desktop
- */
- const { test, expect } = require('@playwright/test');
- const { registerRole, apiPost } = require('../helpers/api');
- test.describe('API级冒烟(远程后端)', () => {
- let ctx;
- test.beforeAll(async ({ request }) => {
- ctx = await registerRole(request, 'parent', 'QA-SMOKE');
- });
- test('自注册链路可用(拿到有效 token)', async () => {
- expect(ctx.token.length).toBeGreaterThan(0);
- expect(ctx.userId).toBeTruthy();
- expect(ctx.familyId).toBeTruthy();
- });
- test('家庭成员列表接口可调用 (code=200)', async ({ request }) => {
- const r = await apiPost(request, '/api/family/member/list', {}, ctx.token);
- expect(r.code).toBe(200);
- expect(Array.isArray(r.data)).toBeTruthy();
- });
- test('能量概览接口可调用 (code=200)', async ({ request }) => {
- const r = await apiPost(request, '/api/energy/overview', {}, ctx.token);
- expect(r.code).toBe(200);
- expect(r.data).toBeTruthy();
- });
- test('成员列表参数校验生效(越权家庭 → 403)', async ({ request }) => {
- const r = await apiPost(request, '/api/family/member/list', { familyId: 999999999 }, ctx.token);
- expect(r.code).toBe(403);
- expect(String(r.message)).toContain('无权访问');
- });
- });
|