Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
Publications

Publications by Auri Vincenzi

2013

Applying genetic algorithms to data selection for SQL mutation analysis

Authors
Loureiro Monção, ACB; Camilo Junior, CG; Queiroz, LT; Rodrigues, CL; Leitão Júnior, PdS; Vincenzi, AMR;

Publication
GECCO (Companion)

Abstract
This paper presents an approach to Structured Query Lan- guage (SQL) instruction tests via Mutation Analysis that uses Evolutionary Algorithms (GA) to select data to be used in the assessment of mutants. Based on a heuristic perspec- tive, our aim is to select an effective data set which may help detect faults in the SQL instructions of a given appli- cation. The results obtained from experiments reveal a good performance using GA metaheuristic.

2018

Reducing the Cost of Mutation Testing using the Semantic Size of Mutant

Authors
Sousa, LD; Vincenzi, AMR; Delamaro, ME; Vieira, IR; de Mendonca, VRL; Rodrigues, CL;

Publication
2018 IEEE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN, AND CYBERNETICS (SMC)

Abstract
Mutation Testing has been proved to be effective in detecting faults. However, it suffers from the large number of mutants generated and analyzed when we apply the operators to create mutants. To alleviate this problem, this paper proposes an approach to find a reduced set of mutation operators that reduces the generated mutants and maintains the test effectiveness. Our approach adapts the semantic characterization of faults in order to find this set of mutation operators that will reduce the cost of Mutation Testing. The experimental results indicate that our approach is able to find a set of operators that reduce the mutation cost while maintaining the test effectiveness.

2023

Towards the Implementation of a Mobile Application Testing Infrastructure at Von Braun Labs

Authors
Kuroishi, PH; Maldonado, JC; Vincenzi, AMR;

Publication
2023 IEEE 34TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, ISSRE

Abstract
With the massive adoption of mobile devices, it became more mandatory for developers to provide high-quality applications. Nowadays, mobile devices are used for different purposes: entertainment, shopping, banking, and communication. Moreover, mobile devices can communicate and exchange information with various IoT devices distributed across the city. However, mobile application testing has different challenges when compared to other types of applications (i.e., desktop and client-server applications). First, we must consider mobile devices' different characteristics and limitations, such as connectivity, screen size, density, sensors, and limited battery. Second, there is a wide range of mobile devices from diverse vendors and models. Hence, there is a need to consider different device configurations to reduce compatibility issues that may occur in a high-fragmented ecosystem. In this case, several tools and services with various features and business models aim to run tests on multiple devices. In this practical experience report, we present the initial results of implementing a testing tool/service at Von Braun Labs to support the execution of tests across multiple Android devices. The stakeholders stated the need to (i) execute the tests on physical devices; and (ii) the tool/service must support tests that interact with a specialized IoT device. We start the study by comparing different tools/services to select the most suitable one for Von Braun Labs. We propose a comparison framework to help evaluate six tools/services based on their technical, usability, and customization features. Then, we present a case study with an app from Von Braun Labs to validate the selected testing environment. Finally, we discuss the lessons learned, contributions, and future directions, pinpointing the need for a testing process since the beginning of the development project and the importance of lessening the gap between academia and industry.

2013

A Coevolutionary Algorithm to Automatic Test Case Selection and Mutant in Mutation Testing

Authors
de Oliveira, AAL; Camilo, CG; Vincenzi, AMR;

Publication
2013 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION (CEC)

Abstract
One of the main problems to perform the Software Testing is to find a set of tests (subset from input domain of the problem) which is effective to detect the remaining bugs in the software. The Search-Based Software Testing (SBST) approach uses metaheuristics to find low cost set of tests with a high effectiveness to detect bugs. From several existing test criteria, Mutation Testing is considered quite promising to reveal bugs, despite its high computational cost, due to the great quantity of mutant programs generated. Therefore, this paper addresses the problem of selecting mutant programs and test cases in Mutation Testing context. To this end, it is proposed a Coevolutionary Genetic Algorithm (CGA) and the concept of Genetic Effectiveness, describing a new representation and implementing new genetic operators. The CGA is applied in five benchmarks and the results are compared to other five methods, showing a better performance of the proposed algorithm in subsets automatic selection with better mutation score and greater reduction of computational cost, specifically the amount of testing, when compared with exhaustive test. © 2013 IEEE.

2018

Towards cognitive support for unit testing: A qualitative study with practitioners

Authors
Prado, MP; Vincenzi, AMR;

Publication
JOURNAL OF SYSTEMS AND SOFTWARE

Abstract
Unit testing is an important component of software quality improvement. Several researchers proposed automated tools to improve this activity over the years. However, these research efforts have not been sufficient to help the practitioners to address some associated mental tasks. Motivated by this gap, we conducted a qualitative study of professionals with unit testing experience. The goal was to understand how to improve the cognitive support provided by the testing tools, by considering the practitioners’ perspective on their unit testing review practices. We obtained the responses from our volunteers through a questionnaire composed both of open-ended and closed questions. Our results revealed some primary tasks which require cognitive support, including monitoring of pending and executed unit testing tasks, and navigating across unit testing related artifacts. We summarize our results in a framework, and based on it, we develop a research agenda as an actionable instrument to the community. Our study's contributions comprise practical improvement suggestions for the current tools and describe further opportunities for research in software testing. Moreover, we comprehensively explain our qualitative methods.

2024

Towards the definition of a research agenda on mobile application testing based on a tertiary study

Authors
Kuroishi, PH; Maldonado, JC; Vincenzi, AMR;

Publication
INFORMATION AND SOFTWARE TECHNOLOGY

Abstract
Context: Mobile application testing has gained considerable attention in recent years since mobile devices have become increasingly present in our lives. Unlike traditional software, mobile application testing has to deal with peculiarities, such as screen size and densities, different operating systems, and multiple sensors that increase the complexity of testing. Objective: This paper summarizes and analyzes the current secondary studies on mobile application testing through a tertiary study. Method: We selected and analyzed 21 secondary studies related to mobile application testing. Results: We categorized 21 secondary studies according to their main and specific research topics, test objectives, and testing platforms. Furthermore, we analyze 87 gaps and challenges identified by the secondary studies to understand which gaps have already been addressed and which gaps are still uncovered. Conclusion: Based on the results, we propose a research agenda with 15 open challenges related to mobile application testing to help future research.

  • 6
  • 13