23 lines
1.4 KiB
Python
Executable File
23 lines
1.4 KiB
Python
Executable File
import time, json
|
|
from pathlib import Path
|
|
from playwright.sync_api import sync_playwright
|
|
TS = time.strftime("%Y%m%d-%H%M%S")
|
|
OUT = Path(f"/var/www/html/test-report/autonomy-v2-{TS}"); OUT.mkdir(parents=True, exist_ok=True)
|
|
result = {"ts": TS}
|
|
try:
|
|
with sync_playwright() as p:
|
|
browser = p.chromium.launch(headless=True, args=["--no-sandbox"])
|
|
ctx = browser.new_context(viewport={"width":1600,"height":1400}, record_video_dir=str(OUT), record_video_size={"width":1600,"height":1400}, ignore_https_errors=True)
|
|
page = ctx.new_page()
|
|
page.goto("https://weval-consulting.com/wevia-autonomy-dashboard.html", wait_until="domcontentloaded", timeout=20000)
|
|
time.sleep(8) # let API respond
|
|
result["kpis"] = page.evaluate("document.querySelectorAll('.kpi').length")
|
|
result["score"] = page.evaluate("document.querySelector('.autonomy-score-box .score')?.innerText?.slice(0,10)")
|
|
result["grand_total_visible"] = page.evaluate("document.body.innerText.includes('9068') || document.body.innerText.includes('9 068')")
|
|
page.screenshot(path=str(OUT/"autonomy-v2-fullpage.png"), full_page=True)
|
|
ctx.close(); browser.close()
|
|
print(f"[v2] kpis={result['kpis']} score={result.get('score')} grand_total_visible={result.get('grand_total_visible')}")
|
|
except Exception as e:
|
|
result["error"] = str(e); print(f"ERR: {e}")
|
|
with open(OUT/"result.json","w") as f: json.dump(result,f,indent=2)
|