fix: 修复测试中操作admin用户导致后续测试失败的问题
- 修复密码哈希格式问题(从$2a$改为$2b$) - 更新所有测试用例密码从Test@123改为admin123 - 修改测试2.3、2.5、2.6,避免操作admin用户(第1行) - 在beforeEach中添加页面初始化,避免localStorage访问错误 - 添加测试数据清理机制
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { LoginPage } from './pages/LoginPage';
|
||||
|
||||
test.describe('登录稳定性测试', () => {
|
||||
let loginPage: LoginPage;
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
loginPage = new LoginPage(page);
|
||||
|
||||
// 确保页面已经导航到正确的URL,避免localStorage访问错误
|
||||
await page.goto('/');
|
||||
await page.waitForLoadState('domcontentloaded');
|
||||
});
|
||||
|
||||
// 连续执行10次登录测试,验证稳定性
|
||||
for (let i = 1; i <= 10; i++) {
|
||||
test(`登录测试 #${i}`, async ({ page }) => {
|
||||
console.log(`=== 开始登录测试 #${i} ===`);
|
||||
|
||||
await loginPage.goto();
|
||||
await loginPage.login('admin', 'admin123');
|
||||
|
||||
const currentUrl = page.url();
|
||||
console.log(`测试 #${i} - 当前URL:`, currentUrl);
|
||||
|
||||
const token = await page.evaluate(() => localStorage.getItem('token'));
|
||||
console.log(`测试 #${i} - Token:`, token ? '存在' : '不存在');
|
||||
|
||||
expect(currentUrl).not.toContain('/login');
|
||||
expect(token).toBeTruthy();
|
||||
|
||||
console.log(`✅ 测试 #${i} 通过\n`);
|
||||
});
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user