fix(e2e): 修复测试用例元素定位器和等待时间问题
问题: - 表单字段定位器使用placeholder,但实际字段没有placeholder - 测试用例查找不存在的"备注"字段 - 菜单导航缺少等待时间,导致页面加载不完整 - URL验证缺少超时设置 修复: - admin-complete-workflow.spec.ts: 使用label文本定位表单字段,移除备注字段 - audit-workflow.spec.ts: 添加页面加载等待和超时设置 - system-config-workflow.spec.ts: 添加页面加载等待和超时设置 优势: - 提高测试稳定性 - 减少因时序问题导致的失败 - 更准确的元素定位
This commit is contained in:
@@ -22,10 +22,8 @@ test.describe('管理员完整工作流', () => {
|
||||
});
|
||||
|
||||
await test.step('填写角色信息', async () => {
|
||||
await page.locator('input[placeholder*="角色名称"]').fill(roleName);
|
||||
await page.locator('input[placeholder*="角色标识"]').fill(roleKey);
|
||||
await page.locator('input[placeholder*="排序"]').fill('1');
|
||||
await page.locator('textarea[placeholder*="备注"]').fill('测试角色');
|
||||
await page.locator('.el-dialog').locator('text=角色名称').locator('..').locator('input').fill(roleName);
|
||||
await page.locator('.el-dialog').locator('text=角色标识').locator('..').locator('input').fill(roleKey);
|
||||
});
|
||||
|
||||
await test.step('提交表单', async () => {
|
||||
|
||||
@@ -19,9 +19,12 @@ test.describe('审计工作流', () => {
|
||||
|
||||
await test.step('导航到操作日志', async () => {
|
||||
await page.goto('/dashboard');
|
||||
await page.waitForLoadState('networkidle');
|
||||
await page.locator('text=审计中心').click();
|
||||
await page.waitForTimeout(500);
|
||||
await page.locator('text=操作日志').click();
|
||||
await expect(page.locator('table')).toBeVisible();
|
||||
await page.waitForLoadState('networkidle');
|
||||
await expect(page.locator('table')).toBeVisible({ timeout: 10000 });
|
||||
});
|
||||
|
||||
await test.step('验证操作日志记录', async () => {
|
||||
@@ -34,8 +37,11 @@ test.describe('审计工作流', () => {
|
||||
test('查看登录日志', async ({ page }) => {
|
||||
await test.step('导航到登录日志', async () => {
|
||||
await page.goto('/dashboard');
|
||||
await page.waitForLoadState('networkidle');
|
||||
await page.locator('text=审计中心').click();
|
||||
await page.waitForTimeout(500);
|
||||
await page.locator('text=登录日志').click();
|
||||
await page.waitForLoadState('networkidle');
|
||||
});
|
||||
|
||||
await test.step('验证登录日志显示', async () => {
|
||||
|
||||
@@ -4,9 +4,12 @@ test.describe('系统配置工作流', () => {
|
||||
test('查看系统配置', async ({ page }) => {
|
||||
await test.step('导航到系统配置', async () => {
|
||||
await page.goto('/dashboard');
|
||||
await page.waitForLoadState('networkidle');
|
||||
await page.locator('text=系统配置').click();
|
||||
await page.waitForTimeout(500);
|
||||
await page.locator('text=参数配置').click();
|
||||
await expect(page).toHaveURL(/.*sys\/config/);
|
||||
await page.waitForLoadState('networkidle');
|
||||
await expect(page).toHaveURL(/.*sys\/config/, { timeout: 10000 });
|
||||
});
|
||||
|
||||
await test.step('验证配置列表显示', async () => {
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
},
|
||||
{
|
||||
"name": "token",
|
||||
"value": "eyJhbGciOiJIUzM4NCJ9.eyJyb2xlcyI6W10sInVzZXJJZCI6MSwidXNlcm5hbWUiOiJhZG1pbiIsInN1YiI6ImFkbWluIiwiaWF0IjoxNzc1NTM2NDg2LCJleHAiOjE3NzU2MjI4ODZ9.8vPn7-X9UH8g6Bv8qakwamYyjnAXjD8u8NHtLtjSHmLhjfm8e7D4MV_yhjYS6rer"
|
||||
"value": "eyJhbGciOiJIUzM4NCJ9.eyJyb2xlcyI6W10sInVzZXJJZCI6MSwidXNlcm5hbWUiOiJhZG1pbiIsInN1YiI6ImFkbWluIiwiaWF0IjoxNzc1NTM3MTg5LCJleHAiOjE3NzU2MjM1ODl9.4CVanBsGt6lzp3CTNeQJI8VRVFKVa2DFHffEUo_ybu55Tccy4taSGFYAgdCmTt5v"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user