0d0b4decc3
- Update E2E test files with latest authentication tokens - Improve test stability and error handling - Update pytest configuration - Enhance gateway direct test with settings integration
64 lines
1.8 KiB
TypeScript
64 lines
1.8 KiB
TypeScript
import { test, expect } from '@playwright/test';
|
|
|
|
test.describe('菜单管理功能测试', () => {
|
|
let authToken: string;
|
|
|
|
test.beforeAll(async ({ request }) => {
|
|
const response = await request.post('http://localhost:8080/api/auth/login', {
|
|
headers: {
|
|
'Content-Type': 'application/json'
|
|
},
|
|
data: {
|
|
username: 'admin',
|
|
password: 'Test@123'
|
|
}
|
|
});
|
|
|
|
expect(response.status()).toBe(200);
|
|
const data = await response.json();
|
|
authToken = data.token;
|
|
});
|
|
|
|
test('菜单列表显示测试', async ({ page }) => {
|
|
await test.step('导航到菜单管理页面', async () => {
|
|
await page.goto('http://localhost:3002/');
|
|
await page.waitForLoadState('networkidle');
|
|
|
|
// 点击系统管理菜单
|
|
const systemMenu = page.locator('.el-sub-menu:has-text("系统管理")').first();
|
|
if (await systemMenu.count() > 0) {
|
|
await systemMenu.click();
|
|
await page.waitForTimeout(500);
|
|
}
|
|
|
|
// 点击菜单管理
|
|
const menuManagement = page.locator('.el-menu-item:has-text("菜单管理")').first();
|
|
if (await menuManagement.count() > 0) {
|
|
await menuManagement.click();
|
|
await page.waitForTimeout(1000);
|
|
}
|
|
});
|
|
|
|
await test.step('验证菜单列表显示', async () => {
|
|
// 检查是否有菜单列表或表格
|
|
const tableSelectors = [
|
|
'table',
|
|
'.el-table',
|
|
'[class*="table"]',
|
|
'.menu-list'
|
|
];
|
|
|
|
let foundTable = false;
|
|
for (const selector of tableSelectors) {
|
|
const count = await page.locator(selector).count();
|
|
if (count > 0) {
|
|
foundTable = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
expect(foundTable).toBe(true);
|
|
});
|
|
});
|
|
});
|