feat: Enhance end-to-end testing framework with improved server setup and UI validation

This commit is contained in:
2025-10-21 09:04:06 +02:00
parent f020d276bc
commit 9114b584c2
11 changed files with 138 additions and 71 deletions

View File

@@ -3,21 +3,20 @@ from playwright.sync_api import Page, expect
# A list of UI routes to check, with their URL, expected title, and a key heading text.
UI_ROUTES = [
("/", "CalMiner Dashboard", "Dashboard"),
("/ui/dashboard", "CalMiner Dashboard", "Dashboard"),
("/ui/scenarios", "CalMiner Scenarios", "Scenarios"),
("/ui/parameters", "CalMiner Parameters", "Parameters"),
("/ui/costs", "CalMiner Costs", "Costs"),
("/ui/consumption", "CalMiner Consumption", "Consumption"),
("/ui/production", "CalMiner Production", "Production"),
("/ui/equipment", "CalMiner Equipment", "Equipment"),
("/ui/maintenance", "CalMiner Maintenance", "Maintenance"),
("/ui/simulations", "CalMiner Simulations", "Simulations"),
("/ui/reporting", "CalMiner Reporting", "Reporting"),
("/", "Dashboard · CalMiner", "Operations Overview"),
("/ui/dashboard", "Dashboard · CalMiner", "Operations Overview"),
("/ui/scenarios", "Scenario Management · CalMiner", "Create a New Scenario"),
("/ui/parameters", "Process Parameters · CalMiner", "Scenario Parameters"),
("/ui/costs", "Costs · CalMiner", "Cost Overview"),
("/ui/consumption", "Consumption · CalMiner", "Consumption Tracking"),
("/ui/production", "Production · CalMiner", "Production Output"),
("/ui/equipment", "Equipment · CalMiner", "Equipment Inventory"),
("/ui/maintenance", "Maintenance · CalMiner", "Maintenance Schedule"),
("/ui/simulations", "Simulations · CalMiner", "Monte Carlo Simulations"),
("/ui/reporting", "Reporting · CalMiner", "Scenario KPI Summary"),
]
@pytest.mark.usefixtures("live_server")
@pytest.mark.parametrize("url, title, heading", UI_ROUTES)
def test_ui_pages_load_correctly(page: Page, url: str, title: str, heading: str):
"""Verify that all UI pages load with the correct title and a visible heading."""