Chanh Duc Ngo

dblp:166/4248 · DBLP profile ↗
← Back
4ranked-venue papers
4as first author
3since 2021 · last 2024
0000-0001-9585-5244ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 4 · 4 first-author · 3 since 2021
YearPublicationVenuePosition
2024 Testing Updated Apps by Adapting Learned Models
abstract
Although App updates are frequent and software engineers would like to verify updated features only, automated testing techniques verify entire Apps and are thus wasting resources. We present Continuous Adaptation of Learned Models (CALM) , an automated App testing approach that efficiently test App updates by adapting App models learned when automatically testing previous App versions. CALM focuses on functional testing. Since functional correctness can be mainly verified through the visual inspection of App screens, CALM minimizes the number of App screens to be visualized by software testers while maximizing the percentage of updated methods and instructions exercised. Our empirical evaluation shows that CALM exercises a significantly higher proportion of updated methods and instructions than six state-of-the-art approaches, for the same maximum number of App screens to be visually inspected. Further, in common update scenarios, where only a small fraction of methods are updated, CALM is even quicker to outperform all competing approaches in a more significant way.
Chanh Duc Ngo, Fabrizio Pastore, Lionel C. Briand
ACM Trans. Softw. Eng. Methodol.1
2022 ATUA: an update-driven app testing tool
abstract
App testing tools tend to generate thousand test inputs; they help engineers identify crashing conditions but not functional failures. Indeed, detecting functional failures requires the visual inspection of App outputs, which is infeasible for thousands of inputs. Existing App testing tools ignore that most of the Apps are frequently updated and engineers are mainly interested in testing the updated functionalities; indeed, automated regression test cases can be used otherwise. We present ATUA, an open source tool targeting Android Apps. It achieves high coverage of the updated App code with a small number of test inputs, thus alleviating the test oracle problem (less outputs to inspect). It implements a model-based approach that synthesizes App models with static analysis, integrates a dynamically-refined state abstraction function and combines complementary testing strategies, including (1) coverage of the model structure, (2) coverage of the App code, (3) random exploration, and (4) coverage of dependencies identified through information retrieval. Our empirical evaluation, conducted with nine popular Android Apps (72 versions), has shown that ATUA, compared to state-of-the-art approaches, achieves higher code coverage while producing fewer outputs to be manually inspected. A demo video is available at https://youtu.be/RqQ1z_Nkaqo.
Chanh Duc Ngo, Fabrizio Pastore, Lionel C. Briand
ISSTA1
2022 Automated, Cost-effective, and Update-driven App Testing
abstract
Apps’ pervasive role in our society led to the definition of test automation approaches to ensure their dependability. However, state-of-the-art approaches tend to generate large numbers of test inputs and are unlikely to achieve more than 50% method coverage. In this article, we propose a strategy to achieve significantly higher coverage of the code affected by updates with a much smaller number of test inputs, thus alleviating the test oracle problem. More specifically, we present ATUA, a model-based approach that synthesizes App models with static analysis, integrates a dynamically refined state abstraction function and combines complementary testing strategies, including (1) coverage of the model structure, (2) coverage of the App code, (3) random exploration, and (4) coverage of dependencies identified through information retrieval. Its model-based strategy enables ATUA to generate a small set of inputs that exercise only the code affected by the updates. In turn, this makes common test oracle solutions more cost-effective, as they tend to involve human effort. A large empirical evaluation, conducted with 72 App versions belonging to nine popular Android Apps, has shown that ATUA is more effective and less effort-intensive than state-of-the-art approaches when testing App updates.
Chanh Duc Ngo, Fabrizio Pastore, Lionel C. Briand
ACM Trans. Softw. Eng. Methodol.1
2015 Using Process Ontology Together with Process Editor - To Facilitate Tool Integration
abstract
Modern software and system collaborative process involves various teams in different development phases thus need efficient solutions for tools integration. In Model-Driven Development, transformation technique is used to allow exchanging models created by different tools. However, in a process, transformation are often defined manually for a tool-incompatible point and rarely reusable. To facilitate the automatic generation of transformation rules for tool integration, we propose to use process ontology together with process editor when modelling process. The idea is using ontology to stock process assets from various sources so that the relations between similar elements in different technical spaces can be established automatically. The process editor enriches the ontology by process elements captured from modelling activities. Then the integrated ontology helps the editor detect tool integration points and complete the process model as well as generate the mappings between concerned process elements.
Chanh Duc Ngo, Hanh Nhi Tran, Joël Champeau
MODELSWARD1