Integrated graph-based testing pipeline for modern single-page applications - Golian, Nataliia Viktorivna; Tisheninova, Varvara Oleksandrivna (Національний технічний університет "Харківський політехнічний інститут", 2025)
In the modern software development ecosystem, Single-Page Applications (SPAs) have become the de facto standard for delivering rich, interactive user experiences. Frameworks such as React, Vue, and Angular enable developers to build highly responsive interfaces; however, they also introduce intricate client-side state management and complex routing logic. As applications grow in size and complexity, manually writing and maintaining end-to-end tests for every possible user journey becomes infeasible. Moreover, ensuring comprehensive coverage − across functionality, security, performance, and usability − requires an integrated and adaptive testing strategy that can scale with rapid release cadences. This paper introduces a novel, integrated testing pipeline that augments conventional unit, component, integration, API, performance, security, and accessibility testing with a formal Graph-Based Testing (GBT) model. We model the SPA as a directed graph, where each vertex represents a distinct UI state or view, and each directed edge corresponds to a user-triggered transition (e.g., clicks, form submissions, navigation events). Leveraging graph algorithms, our approach automatically identifies missing paths to achieve exhaustive node, edge, and simple path coverage up to a configurable length, synthesizes minimal test sequences, and generates executable test scripts in frameworks such as Jest (unit / component), Cypress or Playwright (integration / E2E), and Postman (API). У сучасній екосистемі розробки програмного забезпечення односторінкові застосунки (SPA) стали фактичним стандартом для забезпечення багатого, інтерактивного користувацького досвіду. Такі фреймворки, як React, Vue та Angular, дозволяють розробникам створювати високочутливі інтерфейси; однак вони також впроваджують складне управління станом на стороні клієнта та складну логіку маршрутизації. Зі зростанням розміру та складності застосунків ручне написання та підтримка наскрізних тестів для кожного можливого шляху користувача стають неможливими. Більше того, забезпечення всебічного охоплення – функціональності, безпеки, продуктивності та зручності використання – вимагає інтегрованої та адаптивної стратегії тестування, яка може масштабуватися зі швидкими частотами випусків. У цій статті представлено новий інтегрований конвеєр тестування, який доповнює традиційне тестування модулів, компонентів, інтеграції, API, продуктивності, безпеки та доступності за допомогою формальної моделі тестування на основі графів (GBT). Ми моделюємо SPA як орієнтований граф, де кожна верхівка представляє окремий стан або вигляд інтерфейсу користувача, а кожне орієнтоване ребро відповідає переходу, ініційованому користувачем (наприклад, кліки, відправлення форм, події навігації). Використовуючи графові алгоритми, наш підхід автоматично ідентифікує відсутні шляхи для досягнення вичерпного покриття вузлів, ребер та простих шляхів до налаштовуваної довжини, синтезує мінімальні тестові послідовності та генерує виконувані тестові скрипти у фреймворках, таких як Jest (модуль / компонент), Cypress або Playwright (інтеграція / E2E) та Postman (API).
Інтегрований конвеєр тестування на основі графів для сучасних односторінкових застосунків
Keywords: single-page applications; automated testing; Pareto analysis; test coverage; React; односторінкові застосунки; автоматизоване тестування; аналіз Парето; покриття тестів; React