VLDB 2026 Research / reviewers in the wild / expert
Rahulkrishna Yandrapally
dblp:148/1336 · also Rahul Krishna Yandrapally
· DBLP profile ↗
9ranked-venue papers
6as first author
4since 2021 · last 2023
0000-0002-3857-6529ORCID · reported
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 9 · 6 first-author · 4 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Carving UI Tests to Generate API Tests and API SpecificationabstractModern web applications make extensive use of API calls to update the UI state in response to user events or server-side changes. For such applications, API-level testing can play an important role, in-between unit-level testing and UI-level (or end-to-end) testing. Existing API testing tools require API specifications (e.g., OpenAPI), which often may not be available or, when available, be inconsistent with the API implementation, thus limiting the applicability of automated API testing to web applications. In this paper, we present an approach that leverages UI testing to enable API-level testing for web applications. Our technique navigates the web application under test and automatically generates an API-level test suite, along with an OpenAPI specification that describes the application's server-side APIs (for REST-based web applications). A key element of our solution is a dynamic approach for inferring API endpoints with path parameters via UI navigation and directed API probing. We evaluated the technique for its accuracy in inferring API specifications and the effectiveness of the “carved” API tests. Our results on seven open-source web applications show that the technique achieves 98% precision and 56% recall in inferring endpoints. The carved API tests, when added to test suites generated by two automated REST API testing tools, increase statement coverage by 52% and 29% and branch coverage by 99% and 75%, on average. The main benefits of our technique are: (1) it enables API-level testing of web applications in cases where existing API testing tools are inapplicable and (2) it creates API-level test suites that cover server-side code efficiently while exercising APIs as they would be invoked from an application's web UI, and that can augment existing API test suites. Rahulkrishna Yandrapally, Saurabh Sinha 0003, Rachel Tzoref, Ali Mesbah 0001 |
ICSE | 1 |
| 2023 | Fragment-Based Test Generation for Web AppsabstractAutomated model-based test generation presents a viable alternative to the costly manual test creation currently employed for regression testing of web apps. However, existing model inference techniques rely on threshold-based whole-page comparison to establish state equivalence, which cannot reliably identify near-duplicate web pages in modern web apps. Consequently, existing techniques produce inadequate models for dynamic web apps, and fragile test oracles, rendering the generated regression test suites ineffective. We propose a model-based test generation technique,FragGen, that eliminates the need for thresholds, by employing a novel state abstraction based on page fragmentation to establish state equivalence.FragGenalso uses fine-grained page fragment analysis to diversify state exploration and generate reliable test oracles. Our evaluation shows thatFragGenoutperforms existing whole-page techniques by detecting more near-duplicates, inferring better web app models and generating test suites that are better suited for regression testing. On a dataset of 86,165 state-pairs,FragGendetected 123% more near-duplicates on average compared to whole-page techniques. The crawl models inferred byFragGenhave 62% more precision and 70% more recall on average.FragGenalso generates reliable regression test suites with test actions that have nearly 100% success rate on the same version of the web app even if the execution environment is varied. The test oracles generated byFragGencan detect 98.7% of the visible changes in web pages while being highly robust, making them suitable for regression testing. Rahulkrishna Yandrapally, Ali Mesbah 0001 |
IEEE Trans. Software Eng. | 1 |
| 2022 | CRAWLABEL: Computing Natural-Language Labels for UI Test CasesabstractEnd-to-end test cases that exercise the application under test via its user interface (UI) are known to be hard for developers to read and understand; consequently, diagnosing failures in these tests and maintaining them can be tedious. Techniques for computing natural-language descriptions of test cases can help increase test readability. However, so far, such techniques have been developed for unit test cases; they are not applicable to end-to-end test cases. Yu Liu 0079, Rahulkrishna Yandrapally, Anup K. Kalia, Saurabh Sinha 0003, Rachel Tzoref, Ali Mesbah 0001 |
AST | 2 |
| 2021 | Mutation Analysis for Assessing End-to-End Web TestsabstractEnd-to-end UI testing plays a significant role in the regression testing of web apps, in order to validate end user functionality. Because of their importance, UI test suites are often created and maintained manually by employing browser automation tools such as selenium. However, currently, there exists no reliable method to ascertain the fault-finding capabilities for UI test suite of any given web app. Mutation testing, a well known fault-based testing technique for assessment of test suite adequacy, relies on generating mutants by making small changes to source code imitating programmer errors. However, mutation testing is difficult to employ for any given web app because of the heterogeneous nature of the multiple server-side and client-side components they can contain. In this work, we present MaewU, a mutation analysis framework for assessing web UI test suites, which is applicable to any web app as it mutates the dynamic DOM in the browser instead of the source code. We propose 16 mutation operators that mutate the behaviour and appearance of web elements to mimic the nine categories of web app faults found through an analysis of 250 bug reports. We evaluate our dynamic mutation analysis framework on six open source web apps. The results from our empirical evaluation demonstrate that MaewU is effective in assessing Web UI test suites in terms of adequacy and facilitates test suite quality improvements. Rahulkrishna Yandrapally, Ali Mesbah 0001 |
ICSME | 1 |
| 2020 | Near-duplicate detection in web app model inferenceabstractAutomated web testing techniques infer models from a given web app, which are used for test generation. From a testing viewpoint, such an inferred model should contain the minimal set of states that are distinct, yet, adequately cover the app's main functionalities. In practice, models inferred automatically are affected by near-duplicates, i.e., replicas of the same functional webpage differing only by small insignificant changes. We present the first study of near-duplicate detection algorithms used in within app model inference. We first characterize functional near-duplicates by classifying a random sample of state-pairs, from 493k pairs of webpages obtained from over 6,000 websites, into three categories, namely clone, near-duplicate, and distinct. We systematically compute thresholds that define the boundaries of these categories for each detection technique. We then use these thresholds to evaluate 10 near-duplicate detection techniques from three different domains, namely, information retrieval, web testing, and computer vision on nine open-source web apps. Our study highlights the challenges posed in automatically inferring a model for any given web app. Our findings show that even with the best thresholds, no algorithm is able to accurately detect all functional near-duplicates within apps, without sacrificing coverage. Rahulkrishna Yandrapally, Andrea Stocco 0001, Ali Mesbah 0001 |
ICSE | 1 |
| 2018 | Visual web test repairabstractWeb tests are prone to break frequently as the application under test evolves, causing much maintenance effort in practice. To detect the root causes of a test breakage, developers typically inspect the test's interactions with the application through the GUI. Existing automated test repair techniques focus instead on the code and entirely ignore visual aspects of the application. We propose a test repair technique that is informed by a visual analysis of the application. Our approach captures relevant visual information from tests execution and analyzes them through a fast image processing pipeline to visually validate test cases as they re-executed for regression purposes. Then, it reports the occurrences of breakages and potential fixes to the testers. Our approach is also equipped with a local crawling mechanism to handle non-trivial breakage scenarios such as the ones that require to repair the test's workflow. We implemented our approach in a tool called Vista. Our empirical evaluation on 2,672 test cases spanning 86 releases of four web applications shows that Vista is able to repair, on average, 81% of the breakages, a 41% increment with respect to existing techniques. Andrea Stocco 0001, Rahulkrishna Yandrapally, Ali Mesbah 0001 |
ESEC/SIGSOFT FSE | 2 |
| 2018 | Vista: web test repair using computer visionabstractRepairing broken web element locators represents the major main- tenance cost of web test cases. To detect possible repairs, testers typically inspect the tests’ interactions with the application under test through the GUI. Existing automated test repair techniques focus instead on the code and ignore visual aspects of the applica- tion. In this demo paper, we give an overview of Vista, a novel test repair technique that leverages computer vision and local crawling to automatically suggest and apply repairs to broken web tests. URL: https://github.com/saltlab/Vista Andrea Stocco 0001, Rahulkrishna Yandrapally, Ali Mesbah 0001 |
ESEC/SIGSOFT FSE | 2 |
| 2015 | Automated Modularization of GUI Test CasesabstractTest cases that drive an application under test via its graphical user interface (GUI) consist of sequences of steps that perform actions on, or verify the state of, the application user interface. Such tests can be hard to maintain, especially if they are not properly modularized - that is, common steps occur in many test cases, which can make test maintenance cumbersome and expensive. Performing modularization manually can take up considerable human effort. To address this, we present an automated approach for modularizing GUI test cases. Our approach consists of multiple phases. In the first phase, it analyzes individual test cases to partition test steps into candidate subroutines, based on how user-interface elements are accessed in the steps. This phase can analyze the test cases only or also leverage execution traces of the tests, which involves a cost-accuracy tradeoff. In the second phase, the technique compares candidate subroutines across test cases, and refines them to compute the final set of subroutines. In the last phase, it creates callable subroutines, with parameterized data and control flow, and refactors the original tests to call the subroutines with context-specific data and control parameters. Our empirical results, collected using open-source applications, illustrate the effectiveness of the approach. Rahulkrishna Yandrapally, Giriprasad Sridhara, Saurabh Sinha 0001 |
ICSE (1) | 1 |
| 2014 | Robust test automation using contextual cluesabstractDespite the seemingly obvious advantage of test automation, significant skepticism exists in the industry regarding its cost-benefit tradeoffs. Test scripts for web applications are fragile: even small changes in the page layout can break a number of tests, requiring the expense of re-automating them. Moreover, a test script created for one browser cannot be relied upon to run on a different web browser: it requires duplicate effort to create and maintain versions of tests for a variety of browsers. Because of these hidden costs, organizations often fall back to manual testing. Rahulkrishna Yandrapally, Suresh Thummalapenta, Saurabh Sinha 0001, Satish Chandra 0001 |
ISSTA | 1 |