| from playwright.sync_api import sync_playwright |
|
|
| with sync_playwright() as p: |
| browser = p.chromium.launch(headless=True) |
| |
| |
| page = browser.new_page(viewport={"width": 1920, "height": 1080}) |
| page.goto('http://localhost:7860') |
| page.wait_for_load_state('networkidle') |
| page.wait_for_timeout(2000) |
| |
| |
| page.screenshot(path='screenshots/desktop.png', full_page=True) |
| print("Desktop screenshot saved") |
| |
| |
| title = page.title() |
| print(f"Page title: {title}") |
| |
| |
| buttons = page.locator('button').all() |
| print(f"Buttons found: {len(buttons)}") |
| |
| |
| inputs = page.locator('input').all() |
| print(f"Input elements found: {len(inputs)}") |
| |
| |
| dropdowns = page.locator('[role="combobox"]').all() |
| print(f"Dropdowns found: {len(dropdowns)}") |
| |
| |
| radios = page.locator('[role="radio"]').all() |
| print(f"Radio buttons found: {len(radios)}") |
| |
| |
| sliders = page.locator('input[type="range"]').all() |
| print(f"Sliders found: {len(sliders)}") |
| |
| |
| page.set_viewport_size({"width": 375, "height": 812}) |
| page.wait_for_timeout(500) |
| page.screenshot(path='screenshots/mobile.png', full_page=True) |
| print("Mobile screenshot saved") |
| |
| |
| page.set_viewport_size({"width": 768, "height": 1024}) |
| page.wait_for_timeout(500) |
| page.screenshot(path='screenshots/tablet.png', full_page=True) |
| print("Tablet screenshot saved") |
| |
| browser.close() |
| print("\nVisual tests complete!") |
|
|