refactor(security): 重构安全配置并优化测试环境
- 移除旧的测试套件和UAT测试文件 - 更新密码编码器配置使用BCrypt strength=12 - 添加用户角色关联表和相关服务 - 优化前端日期显示格式 - 清理无用资源和配置文件 - 增强测试数据管理和清理功能
This commit is contained in:
@@ -0,0 +1,103 @@
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { LoginPage } from './pages/LoginPage';
|
||||
import { DashboardPage } from './pages/DashboardPage';
|
||||
import { RoleManagementPage } from './pages/RoleManagementPage';
|
||||
import { UserManagementPage } from './pages/UserManagementPage';
|
||||
|
||||
test.describe('UAT权限分配流程测试', () => {
|
||||
test('UAT-PERM-001: 权限分配完整流程', async ({ page }) => {
|
||||
const loginPage = new LoginPage(page);
|
||||
const dashboardPage = new DashboardPage(page);
|
||||
const roleManagementPage = new RoleManagementPage(page);
|
||||
const userManagementPage = new UserManagementPage(page);
|
||||
|
||||
await test.step('1. 管理员登录', async () => {
|
||||
await loginPage.goto();
|
||||
await loginPage.login('admin', 'admin123');
|
||||
await page.waitForURL(/.*dashboard/);
|
||||
});
|
||||
|
||||
await test.step('2. 创建新角色', async () => {
|
||||
await dashboardPage.navigateToRoleManagement();
|
||||
await roleManagementPage.clickCreateRole();
|
||||
|
||||
const timestamp = Date.now();
|
||||
const roleData = {
|
||||
roleName: `UAT角色_${timestamp}`,
|
||||
roleKey: `uat_role_${timestamp}`,
|
||||
roleSort: '1',
|
||||
status: '1',
|
||||
remark: 'UAT测试角色'
|
||||
};
|
||||
|
||||
await roleManagementPage.fillRoleForm(roleData);
|
||||
await roleManagementPage.submitForm();
|
||||
await expect(roleManagementPage.successMessage).toBeVisible();
|
||||
});
|
||||
|
||||
await test.step('3. 为角色分配权限', async () => {
|
||||
await roleManagementPage.openPermissionDialog(1);
|
||||
await roleManagementPage.selectPermission('system:user:view');
|
||||
await roleManagementPage.selectPermission('system:user:add');
|
||||
await roleManagementPage.submitPermissions();
|
||||
await expect(roleManagementPage.successMessage).toBeVisible();
|
||||
});
|
||||
|
||||
await test.step('4. 为用户分配角色', async () => {
|
||||
await dashboardPage.navigateToUserManagement();
|
||||
await userManagementPage.clickEditButton(1);
|
||||
await userManagementPage.selectRole('UAT角色');
|
||||
await userManagementPage.submitForm();
|
||||
await expect(userManagementPage.successMessage).toBeVisible();
|
||||
});
|
||||
});
|
||||
|
||||
test('UAT-PERM-002: 角色权限验证', async ({ page }) => {
|
||||
const loginPage = new LoginPage(page);
|
||||
const dashboardPage = new DashboardPage(page);
|
||||
const roleManagementPage = new RoleManagementPage(page);
|
||||
|
||||
await test.step('1. 管理员登录', async () => {
|
||||
await loginPage.goto();
|
||||
await loginPage.login('admin', 'admin123');
|
||||
await page.waitForURL(/.*dashboard/);
|
||||
});
|
||||
|
||||
await test.step('2. 导航到角色管理', async () => {
|
||||
await dashboardPage.navigateToRoleManagement();
|
||||
await expect(roleManagementPage.table).toBeVisible();
|
||||
});
|
||||
|
||||
await test.step('3. 验证角色权限显示', async () => {
|
||||
await roleManagementPage.clickPermissionButton(1);
|
||||
await expect(page.locator('.permission-dialog')).toBeVisible();
|
||||
|
||||
const permissionCount = await page.locator('.permission-checkbox').count();
|
||||
expect(permissionCount).toBeGreaterThan(0);
|
||||
});
|
||||
});
|
||||
|
||||
test('UAT-PERM-003: 权限撤销流程', async ({ page }) => {
|
||||
const loginPage = new LoginPage(page);
|
||||
const dashboardPage = new DashboardPage(page);
|
||||
const roleManagementPage = new RoleManagementPage(page);
|
||||
|
||||
await test.step('1. 管理员登录', async () => {
|
||||
await loginPage.goto();
|
||||
await loginPage.login('admin', 'admin123');
|
||||
await page.waitForURL(/.*dashboard/);
|
||||
});
|
||||
|
||||
await test.step('2. 导航到角色管理', async () => {
|
||||
await dashboardPage.navigateToRoleManagement();
|
||||
await expect(roleManagementPage.table).toBeVisible();
|
||||
});
|
||||
|
||||
await test.step('3. 撤销角色权限', async () => {
|
||||
await roleManagementPage.openPermissionDialog(1);
|
||||
await roleManagementPage.deselectPermission('system:user:delete');
|
||||
await roleManagementPage.submitPermissions();
|
||||
await expect(roleManagementPage.successMessage).toBeVisible();
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user