import { STAGING_URL, PATHS, TIMEOUTS } from './config/staging-config'; import { test, expect } from '@playwright/test'; // STAGING_URL is now imported from config test('Debug login page selectors', async ({ page }) => { // Navigate to the login page await page.goto(PATHS.login); // Wait for the page to load await page.waitForLoadState('networkidle'); // Take a screenshot to see what's on the page await page.screenshot({ path: 'test-results/debug-login-page.png', fullPage: true }); // Try to find form elements console.log('Looking for form elements...'); // Check for various possible selectors const possibleSelectors = [ '#username', 'input[name="username"]', 'input[name="log"]', '#user_login', 'input[type="text"]', 'input[type="email"]', '.login-username input', '#loginform input[type="text"]' ]; for (const selector of possibleSelectors) { const exists = await page.locator(selector).count() > 0; console.log(`${selector}: ${exists ? 'FOUND' : 'NOT FOUND'}`); } // Also check for password field const passwordSelectors = [ '#password', 'input[name="password"]', 'input[name="pwd"]', '#user_pass', 'input[type="password"]', '.login-password input', '#loginform input[type="password"]' ]; console.log('\nLooking for password field...'); for (const selector of passwordSelectors) { const exists = await page.locator(selector).count() > 0; console.log(`${selector}: ${exists ? 'FOUND' : 'NOT FOUND'}`); } // Get all input fields on the page const allInputs = await page.locator('input').all(); console.log(`\nTotal input fields found: ${allInputs.length}`); for (let i = 0; i < allInputs.length; i++) { const input = allInputs[i]; const type = await input.getAttribute('type'); const name = await input.getAttribute('name'); const id = await input.getAttribute('id'); console.log(`Input ${i + 1}: type="${type}", name="${name}", id="${id}"`); } });