Files
novalon-website/e2e/scripts/manual-login.ts
T
张翔 f5dec95a83 feat: 添加管理后台页面和功能,优化测试和性能配置
refactor: 重构页面导航和滚动逻辑,提升用户体验

test: 更新测试配置和用例,增加覆盖率和稳定性

perf: 优化性能指标和阈值,适应开发环境需求

ci: 添加Lighthouse CI工作流,集成性能测试

docs: 更新API文档和健康检查端点

fix: 修复登录页面和表单提交问题

style: 调整响应式布局和可访问性改进

chore: 更新依赖项和脚本配置
2026-03-24 10:11:30 +08:00

38 lines
1.2 KiB
TypeScript

import { chromium } from '@playwright/test';
async function login() {
const browser = await chromium.launch({ headless: false });
const context = await browser.newContext();
const page = await context.newPage();
try {
console.log('🚀 开始登录...');
await page.goto('http://localhost:3000/admin/login', { timeout: 120000, waitUntil: 'domcontentloaded' });
console.log('📝 填写登录信息...');
await page.locator('#email').fill('admin@novalon.cn');
await page.locator('#password').fill('admin123456');
console.log('🖱️ 点击登录按钮...');
await page.locator('button[type="submit"]').click();
console.log('⏳ 等待登录成功...');
await page.waitForURL(/\/admin(?!\/login)/, { timeout: 60000 });
console.log('✅ 登录成功!');
console.log('📍 当前URL:', page.url());
console.log('💾 保存认证状态...');
await context.storageState({ path: '../.auth/admin.json' });
console.log('✅ 认证状态已保存到 .auth/admin.json');
} catch (error) {
console.error('❌ 登录失败:', error);
await page.screenshot({ path: 'login-error.png' });
} finally {
await browser.close();
}
}
login();