Files
everything-is-suitable/everything-is-suitable-test/e2e/regression/regression-tests.spec.ts
T
张翔 08ea5fbe98 feat(admin): 添加用户管理相关文件
添加用户管理视图、API和状态管理文件
2026-03-28 14:37:29 +08:00

151 lines
5.5 KiB
TypeScript

import { test, expect } from '../test-fixtures';
test.describe('@regression 回归测试', () => {
test.beforeEach(async ({ pageObjects, testData, testLogger }) => {
testLogger.startTest('回归测试');
testLogger.startStep('登录系统');
await pageObjects.loginPage.navigate();
await pageObjects.loginPage.login(testData.admin.username, testData.admin.password);
await pageObjects.dashboardPage.waitForLoad();
});
test.afterEach(async ({ testLogger, helpers }) => {
await helpers.screenshot.takeScreenshot('after-test');
testLogger.endTest('回归测试', 'passed');
});
test('@normal 用户管理 - 创建用户', async ({ pageObjects, testData, testLogger }) => {
testLogger.startStep('导航到用户管理页面');
await pageObjects.dashboardPage.navigateToUserManagement();
await pageObjects.userManagementPage.waitForLoad();
testLogger.startStep('创建新用户');
const userData = {
username: `test_user_${Date.now()}`,
realName: '测试用户',
email: 'test@example.com',
phone: '13800138000',
status: 1
};
await pageObjects.userManagementPage.createUser(userData);
testLogger.startStep('验证用户创建成功');
const userExists = await pageObjects.userManagementPage.searchUser(userData.username);
expect(userExists).toBeTruthy();
testLogger.endStep('验证用户创建成功', 'passed');
});
test('@normal 用户管理 - 编辑用户', async ({ pageObjects, testData, testLogger }) => {
testLogger.startStep('导航到用户管理页面');
await pageObjects.dashboardPage.navigateToUserManagement();
await pageObjects.userManagementPage.waitForLoad();
testLogger.startStep('编辑用户');
const userData = {
username: testData.user.username,
realName: '更新后的用户名',
email: 'updated@example.com'
};
await pageObjects.userManagementPage.editUser(userData.username, userData);
testLogger.startStep('验证用户编辑成功');
const updatedUser = await pageObjects.userManagementPage.searchUser(userData.username);
expect(updatedUser).toBeTruthy();
testLogger.endStep('验证用户编辑成功', 'passed');
});
test('@normal 用户管理 - 删除用户', async ({ pageObjects, testData, testLogger }) => {
testLogger.startStep('导航到用户管理页面');
await pageObjects.dashboardPage.navigateToUserManagement();
await pageObjects.userManagementPage.waitForLoad();
testLogger.startStep('创建测试用户');
const userData = {
username: `test_delete_${Date.now()}`,
realName: '待删除用户',
email: 'delete@example.com',
phone: '13800138000',
status: 1
};
await pageObjects.userManagementPage.createUser(userData);
testLogger.startStep('删除用户');
await pageObjects.userManagementPage.deleteUser(userData.username);
testLogger.startStep('验证用户删除成功');
const userExists = await pageObjects.userManagementPage.searchUser(userData.username);
expect(userExists).toBeFalsy();
testLogger.endStep('验证用户删除成功', 'passed');
});
test('@normal 角色管理 - 创建角色', async ({ pageObjects, testData, testLogger }) => {
testLogger.startStep('导航到角色管理页面');
await pageObjects.dashboardPage.navigateToRoleManagement();
await pageObjects.roleManagementPage.waitForLoad();
testLogger.startStep('创建新角色');
const roleData = {
roleName: '测试角色',
roleCode: 'test_role',
description: '测试角色描述',
status: 1
};
await pageObjects.roleManagementPage.createRole(roleData);
testLogger.startStep('验证角色创建成功');
const roleExists = await pageObjects.roleManagementPage.searchRole(roleData.roleCode);
expect(roleExists).toBeTruthy();
testLogger.endStep('验证角色创建成功', 'passed');
});
test('@normal 角色管理 - 分配权限', async ({ pageObjects, testData, testLogger }) => {
testLogger.startStep('导航到角色管理页面');
await pageObjects.dashboardPage.navigateToRoleManagement();
await pageObjects.roleManagementPage.waitForLoad();
testLogger.startStep('分配权限');
const permissions = ['dashboard:view', 'user:view', 'user:create'];
await pageObjects.roleManagementPage.assignPermissions(testData.role.roleCode, permissions);
testLogger.startStep('验证权限分配成功');
const assignedPermissions = await pageObjects.roleManagementPage.getRolePermissions(testData.role.roleCode);
expect(assignedPermissions).toContain('dashboard:view');
testLogger.endStep('验证权限分配成功', 'passed');
});
test('@normal 菜单管理 - 创建菜单', async ({ pageObjects, testData, testLogger }) => {
testLogger.startStep('导航到菜单管理页面');
await pageObjects.dashboardPage.navigateToMenuManagement();
await pageObjects.menuManagementPage.waitForLoad();
testLogger.startStep('创建新菜单');
const menuData = {
name: '测试菜单',
code: 'test_menu',
path: '/test/menu',
icon: 'SettingOutlined',
sortOrder: 1,
status: 1,
parentId: 0
};
await pageObjects.menuManagementPage.createMenu(menuData);
testLogger.startStep('验证菜单创建成功');
const menuExists = await pageObjects.menuManagementPage.searchMenu(menuData.code);
expect(menuExists).toBeTruthy();
testLogger.endStep('验证菜单创建成功', 'passed');
});
});