const { test, expect, request } = require('@playwright/test'); const API_BASE_URL = 'https://ajy.danclub.cn/api'; test.describe('8.1 App设备管理接口', () => { test('APP-001: 获取设备列表', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/device/page`, { params: { pageNum: 1, pageSize: 10 } }); expect(response.status()).toBe(200); const data = await response.json(); expect(data).toHaveProperty('code'); }); test('APP-002: 获取设备详情', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/device/1`); expect([200, 404]).toContain(response.status()); }); test('APP-003: 获取设备可选列表', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/device/select`); expect(response.status()).toBe(200); }); test('APP-004: 绑定设备到用户', async ({ request }) => { const response = await request.post(`${API_BASE_URL}/app/device/bind`, { data: { deviceCode: 'AJY001' } }); expect([200, 401, 500]).toContain(response.status()); }); test('APP-005: 按设备编号绑定', async ({ request }) => { const response = await request.post(`${API_BASE_URL}/app/device/bind-by-code`, { data: { deviceCode: 'AJY001' } }); expect([200, 401, 500]).toContain(response.status()); }); test('APP-006: 解绑设备', async ({ request }) => { const response = await request.post(`${API_BASE_URL}/app/device/unbind/1`); expect([200, 401, 404]).toContain(response.status()); }); }); test.describe('8.2 App设备分组接口', () => { test('APP-010: 获取设备分组列表', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/group`); expect([200, 401]).toContain(response.status()); }); test('APP-011: 获取分组详情', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/group/1`); expect([200, 401, 404]).toContain(response.status()); }); test('APP-012: 创建设备分组', async ({ request }) => { const response = await request.post(`${API_BASE_URL}/app/group`, { data: { name: '测试分组' } }); expect([200, 201, 401, 500]).toContain(response.status()); }); test('APP-013: 更新分组信息', async ({ request }) => { const response = await request.put(`${API_BASE_URL}/app/group/1`, { data: { name: '更新分组名' } }); expect([200, 401, 404]).toContain(response.status()); }); test('APP-014: 删除分组', async ({ request }) => { const response = await request.delete(`${API_BASE_URL}/app/group/1`); expect([200, 401, 404]).toContain(response.status()); }); test('APP-015: 获取群组成员列表', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/group/1/members`); expect([200, 401, 404]).toContain(response.status()); }); test('APP-016: 添加群组成员', async ({ request }) => { const response = await request.post(`${API_BASE_URL}/app/group/1/members`, { data: { profileId: 1, deviceId: 1 } }); expect([200, 401, 404, 500]).toContain(response.status()); }); test('APP-017: 更新群组成员', async ({ request }) => { const response = await request.put(`${API_BASE_URL}/app/group/1/members/1`, { data: { nickname: '成员昵称' } }); expect([200, 401, 404, 500]).toContain(response.status()); }); test('APP-018: 移除群组成员', async ({ request }) => { const response = await request.delete(`${API_BASE_URL}/app/group/1/members/1`); expect([200, 401, 404]).toContain(response.status()); }); test('APP-019: 获取用户可添加的设备列表', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/group/devices`); expect([200, 401]).toContain(response.status()); }); test('APP-020: 获取设备分组设备列表', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/group/1/devices`); expect([200, 401, 404]).toContain(response.status()); }); }); test.describe('8.3 App用户档案接口', () => { test('APP-030: 获取用户档案', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/profile`); expect([200, 401]).toContain(response.status()); }); test('APP-031: 更新用户档案', async ({ request }) => { const response = await request.put(`${API_BASE_URL}/app/profile`, { data: { nickname: '测试昵称' } }); expect([200, 401, 500]).toContain(response.status()); }); test('APP-032: 获取身体参数', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/profile/body-params`); expect([200, 401]).toContain(response.status()); }); test('APP-033: 更新身体参数', async ({ request }) => { const response = await request.put(`${API_BASE_URL}/app/profile/body-params`, { data: { shoulderWidth: 42, bodyLength: 85 } }); expect([200, 401, 500]).toContain(response.status()); }); test('APP-034: 获取背部产品穴位', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/acupoint/back-product`); expect([200, 401]).toContain(response.status()); }); test('APP-035: 获取身体部位选项', async ({ request }) => { const response = await request.get(`${API_BASE_URL}/app/acupoint/options/body-parts`); expect([200, 401]).toContain(response.status()); }); });