Commit 1bee98b195520ad7a8a05aabe080bfc1beba3205

Authored by zichun
1 parent 18fc2e32

test(frontend): Playwright E2E users 三场景 (fixme 留待手工验收)

REQ_ID: FE-02
frontend/tests/e2e/users.spec.ts 0 → 100644
  1 +import { test, expect } from '@playwright/test';
  2 +
  3 +/**
  4 + * E2E 测试需要:
  5 + * - 后端运行在 :9090(cd backend && mvn spring-boot:run)
  6 + * - 前端 dev server :5173 由 playwright.config webServer 自动起
  7 + * - `npx playwright install chromium`
  8 + * - 后端 sys_user 表至少含 admin (SUPER_ADMIN) + alice 两个用户(seeder 或手工 seed)
  9 + *
  10 + * 本 plan Task 9 当前 .fixme(),FE 完成 review 时纳入手工验收;
  11 + * 由开发者手动 unfix + 启 backend + 跑 `npm run e2e`。
  12 + */
  13 +
  14 +test.fixme('listUsers_rendersAtLeastSeededUsers', async ({ page }) => {
  15 + await page.goto('/login');
  16 + await page.getByPlaceholder('请输入你的用户名').fill('admin');
  17 + await page.getByPlaceholder('请输入你的密码').fill('Password1!');
  18 + await page.getByTestId('login-submit').click();
  19 +
  20 + await expect(page).toHaveURL(/.*\/users/);
  21 + await expect(page.getByText('alice')).toBeVisible();
  22 + await expect(page.getByText('admin')).toBeVisible();
  23 +});
  24 +
  25 +test.fixme('createUser_returnsToListAndShowsNewUser', async ({ page }) => {
  26 + await page.goto('/users/new');
  27 + await page.getByLabel('用户名').fill('e2e_newbie');
  28 + await page.getByLabel('用户号').fill('UE2E1');
  29 + await page.getByTestId('form-save').click();
  30 + await expect(page).toHaveURL(/.*\/users$/);
  31 + await expect(page.getByText('e2e_newbie')).toBeVisible();
  32 +});
  33 +
  34 +test.fixme('editUser_updatesUserCodeSuccessfully', async ({ page }) => {
  35 + await page.goto('/users/1');
  36 + await page.getByLabel('用户号').fill('U_E2E_NEW');
  37 + await page.getByTestId('form-save').click();
  38 + await expect(page).toHaveURL(/.*\/users$/);
  39 +});
... ...