// Wait for page and fill login waitFor("input#username", 10s) type("input#username", "user@example.com") type("input#password", secret("MY_PASSWORD")) click("button#login") waitFor("a#reports", 10s) click("a#reports")
// Navigate to report, request CSV waitFor("button#exportCsv", 10s) click("button#exportCsv") waitForDownload("*.csv", 30s) as downloadedFile
Pseudo-DSL (trimmed for clarity)