Refactor Playwright tests to use cached authentication state for improved performance

- Removed redundant `loginViaUI` calls across E2E tests, leveraging cached storage state for faster test execution.
- Enhanced Playwright configuration to include a `setup` project for pre-caching admin and regular user authentication states.
- Added new `auth.setup.ts` to handle initial authentication and save storage states to `.auth` directory.
- Increased local worker count to 16 (CI unchanged) to optimize parallel execution.
- Updated `.gitignore` to exclude authentication state files.
This commit is contained in:
2025-11-08 20:46:59 +01:00
parent bf95aab7ec
commit a6a10855fa
11 changed files with 184 additions and 70 deletions

View File

@@ -12,11 +12,12 @@ test.describe('Settings Navigation', () => {
await setupAuthenticatedMocks(page);
// Login via UI to establish authenticated session
await loginViaUI(page);
// Auth already cached in storage state (loginViaUI removed for performance)
});
test('should navigate from home to settings profile', async ({ page }) => {
// From home page
// Start at home page (auth already cached in storage state)
await page.goto('/');
await expect(page).toHaveURL('/');
// Navigate to settings/profile
@@ -30,7 +31,8 @@ test.describe('Settings Navigation', () => {
});
test('should navigate from home to settings password', async ({ page }) => {
// From home page
// Start at home page (auth already cached in storage state)
await page.goto('/');
await expect(page).toHaveURL('/');
// Navigate to settings/password