Browse Source

test: add settings page Playwright MCP tests

master
dark 1 month ago
parent
commit
4ae8861481
  1. 138
      frontend/react-shadcn/pc/tests/settings.test.ts

138
frontend/react-shadcn/pc/tests/settings.test.ts

@ -0,0 +1,138 @@
import { TEST_CONFIG, ROUTES, SELECTORS } from './config';
/**
* 测试场景: 设置页面功能
*/
export const settingsTests = {
name: '设置页面测试',
// Test 1: 页面加载
async testSettingsLoad() {
console.log('🧪 Test: 设置页面加载');
await mcp__plugin_playwright_playwright__browser_navigate({
url: `${TEST_CONFIG.baseURL}${ROUTES.settings}`
});
await mcp__plugin_playwright_playwright__browser_wait_for({ time: 2 });
const snapshot = await mcp__plugin_playwright_playwright__browser_snapshot({});
// 验证设置分类
console.assert(
snapshot.includes('个人设置'),
'个人设置卡片应该显示'
);
console.assert(
snapshot.includes('通知设置'),
'通知设置卡片应该显示'
);
console.assert(
snapshot.includes('安全设置'),
'安全设置卡片应该显示'
);
console.assert(
snapshot.includes('外观设置'),
'外观设置卡片应该显示'
);
console.log('✅ 设置页面加载验证通过');
},
// Test 2: 个人设置表单
async testProfileSettings() {
console.log('🧪 Test: 个人设置表单');
const snapshot = await mcp__plugin_playwright_playwright__browser_snapshot({});
// 验证表单字段
console.assert(
snapshot.includes('用户名'),
'用户名字段应该显示'
);
console.assert(
snapshot.includes('邮箱'),
'邮箱字段应该显示'
);
console.assert(
snapshot.includes('手机号'),
'手机号字段应该显示'
);
console.assert(
snapshot.includes('保存设置'),
'保存设置按钮应该显示'
);
console.log('✅ 个人设置表单验证通过');
},
// Test 3: 通知设置开关
async testNotificationSettings() {
console.log('🧪 Test: 通知设置开关');
const snapshot = await mcp__plugin_playwright_playwright__browser_snapshot({});
// 验证通知选项
console.assert(
snapshot.includes('邮件通知'),
'邮件通知选项应该显示'
);
console.assert(
snapshot.includes('系统消息'),
'系统消息选项应该显示'
);
console.assert(
snapshot.includes('接收重要操作邮件通知'),
'邮件通知描述应该显示'
);
console.log('✅ 通知设置开关验证通过');
},
// Test 4: 安全设置 - 密码修改
async testSecuritySettings() {
console.log('🧪 Test: 安全设置');
const snapshot = await mcp__plugin_playwright_playwright__browser_snapshot({});
// 验证密码修改字段
console.assert(
snapshot.includes('当前密码'),
'当前密码字段应该显示'
);
console.assert(
snapshot.includes('新密码'),
'新密码字段应该显示'
);
console.assert(
snapshot.includes('确认密码'),
'确认密码字段应该显示'
);
console.assert(
snapshot.includes('修改密码'),
'修改密码按钮应该显示'
);
console.log('✅ 安全设置验证通过');
},
// Test 5: 外观设置 - 深色模式
async testAppearanceSettings() {
console.log('🧪 Test: 外观设置');
const snapshot = await mcp__plugin_playwright_playwright__browser_snapshot({});
// 验证外观选项
console.assert(
snapshot.includes('深色模式'),
'深色模式选项应该显示'
);
console.assert(
snapshot.includes('使用深色主题'),
'深色主题描述应该显示'
);
console.log('✅ 外观设置验证通过');
},
};
Loading…
Cancel
Save