Portal Entry Runner
One spreadsheet in. Hundreds of cases walked through a web portal’s whole workflow.
- Open
- Rework
- Pick
- Pin on map
- Upload
- Fill form
- Submit
- Send
Every case on the portal had to be opened, sent back, picked up, pinned on the map, given its document, filled, submitted and finally sent to the client. By hand that is nine screens per case, a few hundred times over.
The runner reads the case list from Excel and does it the way a careful person would. Before every click it reads what the portal is actually showing, waits between requests, and if you press Stop or the connection drops, it carries on from the exact step where it paused.
- Its requests match the browser’s own byte for byte, checked by golden tests.
- 37 tests run against a mock portal, so the real one is never touched while testing.
- A case with a missing value is held back with the reason shown. Nothing is guessed.
- Built with
- Python, requests, SQLite, a plain HTML/JS control panel
- One full case
- About 9 minutes, unattended
- Safety
- Paced 6–12 s between requests, retries with back-off, stops itself after 3 failures in a row
