Introduction
As a global leader in information and analytics, Elsevier helps researchers and healthcare professionals advance science and improve health outcomes for the benefit of society. Growing from its roots in publishing, Elsevier offers knowledge and valuable analytics that help users make breakthroughs and drive societal progress. Among its many product lines, Elsevier builds and maintains a portfolio of clinical care research products used by clinicians and nursing staff across hospitals and medical institutions worldwide. These are analytics-driven applications that give healthcare professionals immediate, accurate answers to clinical queries, and they need to work reliably and without interruption regardless of the device, browser, or geography a user is accessing them from.
Abhishek Das, Engineering Manager – Quality at Elsevier, leads quality engineering across these clinical care research products, overseeing a diverse global team responsible for ensuring every release meets the highest standards of reliability, safety, and performance.
With teams distributed globally and a user base spanning multiple continents, Elsevier needed a testing infrastructure that could match the scale and diversity of its real-world usage. By adopting BrowserStack’s App Automate, Automate, and Test Reporting and Analytics across more than 30 products, Elsevier improved release velocity by 40%, reduced test execution time by 70%, and brought post-execution failure analysis down from over 2 hours to just 15 minutes.
A complex, global product portfolio with no scalable testing infrastructure
Elsevier’s clinical products are accessed by users across different countries, institutions, and network environments, each bringing their own combination of device, browser, and operating system. The QA team was responsible for ensuring consistent behaviour across all of these combinations before every release. Without a scalable, centralised infrastructure to support that, the team faced growing pressure on both quality and delivery timelines.
1. Cross-device and cross-browser fragmentation at scale: Elsevier’s products needed to work on MacBooks and Windows machines, on Internet Explorer and the latest versions of Chrome, on Android smartphones and iOS devices, and even on older institutional devices that had not been updated in years. The range of required test combinations was too broad for any internal device lab to cover comprehensively.
2. Maintaining a Selenium grid was a constant overhead: Setting up, maintaining, and scaling an internal Selenium grid consumed significant engineering time and still only covered a limited set of device and browser combinations. Every new device or browser version potentially required additional infrastructure work.
3. Release cycles stretching to nearly a week: Because automation only covered a fraction of the required combinations, manual testing had to fill the gaps. Getting a feature tested thoroughly across five browsers and multiple device types could take five to six days before a release could go out with confidence. This directly impacted delivery velocity.
4. QA teams diverted from high-value work: The combination of manual device testing and infrastructure management meant QA engineers were spending the majority of their time on repetitive, low-signal work instead of exploratory testing, functional coverage improvements, or investigation of complex issues.
5. Geographically diverse users with different device habits: Elsevier’s user base spans multiple regions, and device preferences vary significantly by market. Testing only on the devices prevalent in one geography risked missing real-world failures for users in others. For example, Android usage patterns in certain markets differ significantly from Apple-heavy markets, and ensuring the right device coverage for each was difficult without access to a broad real device cloud.
6. Reproducing and communicating failures was time-consuming: When issues were found, it was often difficult to replicate them on demand or to give developers enough context to act quickly. QA engineers had to manually reconstruct the failure scenario, which was both time-consuming and sometimes impossible when the issue was environment-specific or intermittent.