Skip to content
Peenaka Wedamulla

All case studies

LOLC Technologies · iPay Digital Payment Platform

iPay Web Portals: Cross-Browser Automation

Scalable Selenium and Playwright frameworks in Java and TypeScript for the iPay web portals: modular POM, reusable utilities, parallel cross-browser execution, and low-maintenance authoring across multiple portal modules.

Problem

The iPay web portals span multiple modules (customer, merchant, back-office): each with its own release cadence but shared underlying flows (auth, payments, KYC state). A monolithic test suite would be brittle; per-module suites without shared foundations would drift. We needed a framework that let module teams author quickly without duplicating the same login, waiting, and assertion code for the tenth time.

Architecture

Two complementary framework tracks, sharing a design vocabulary:

  • Selenium + Java: for module teams already fluent in Java, mirroring the backend stack. Strict Page Object Model, a shared driver factory, and a base test class that owns waiting strategies and test data lifecycle.
  • Playwright + TypeScript: for modules where speed of authoring and rich browser tooling mattered more. Same POM discipline, but with Playwright's built-in auto-waiting and cross-browser parity out of the box.
  • Parallel execution: grid / worker pools tuned per environment so a full regression completes inside the release window instead of overflowing it.

My contributions

  • Architected the Selenium (Java) and Playwright (TypeScript) frameworks targeting the iPay web portals with parallel cross-browser execution.
  • Built modular Page Object Model layers with reusable utilities, reducing the surface new tests write against is small and stable, so authoring cost stays low as the portal grows.
  • Maintained comprehensive regression suites aligned with SDLC release cycles, collaborating with developers and product owners in Agile Scrum sprints.
  • Kept traceability from JIRA / Xray requirements through to executed tests so every merge could answer "what's covered?" and "what regressed?".

Outcome

Test maintenance stopped being the tax it used to be: the modular POM meant a UI change touched one file, not thirty. Cross-browser signals became routine rather than heroic. Module teams gained a reliable authoring surface, so QA scaled with the portal instead of lagging behind it.

TODO: swap in a screenshot / short capture of a parallel test run for the case-study hero once available.