Thu 18 Jul 2024 11:54 - 12:12 at Pitanga - Program Analysis and Performance 2 Chair(s): Rahul Purandare

Metamorphic testing is a valuable technique that helps in dealing with the oracle problem. It involves testing software against specifications of its intended behavior given in terms of so called \emph{metamorphic relations}, statements that express properties relating different software elements (e.g., different inputs, methods, etc). The effective application of metamorphic testing strongly depends on identifying suitable domain-specific metamorphic relations, a challenging task, that is typically manually performed.

This paper introduces MemoRIA, a novel approach that aims at automatically identifying metamorphic relations. The technique focuses on a particular kind of metamorphic relation, which asserts equivalences between methods and method sequences. MemoRIA works by first generating an object-protocol abstraction of the software being tested, then using fuzzing to produce candidate relations from the abstraction, and finally validating the candidate relations through run-time analysis. A SAT-based analysis is used to eliminate redundant relations, resulting in a concise set of metamorphic relations for the software under test. We evaluate our technique on a benchmark consisting of 22 Java subjects taken from the literature, and compare MemoRIA with the metamorphic relation inference technique SBES. Our results show that by incorporating the object protocol abstraction information, MemoRIA is able to more effectively infer meaningful metamorphic relations, that are also more precise, compared to SBES, measured in terms of mutation analysis. Also, the SAT-based reduction allows us to significantly reduce the number of reported metamorphic relations, while in general having a small impact in the bug finding ability of the corresponding obtained relations.

Thu 18 Jul

Displayed time zone: Brasilia, Distrito Federal, Brazil change

11:00 - 12:30
Program Analysis and Performance 2Research Papers at Pitanga
Chair(s): Rahul Purandare University of Nebraska-Lincoln
11:00
18m
Talk
Adapting Multi-objectivized Software Configuration Tuning
Research Papers
Tao Chen University of Birmingham, Miqing Li University of Birmingham
Pre-print
11:18
18m
Talk
Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?
Research Papers
Madeline Endres University of Massachusetts Amherst, Sarah Fakhoury Microsoft Research, Saikat Chakraborty Microsoft Research, Shuvendu K. Lahiri Microsoft Research
11:36
18m
Talk
Analyzing Quantum Programs with LintQ: A Static Analysis Framework for Qiskit
Research Papers
Matteo Paltenghi University of Stuttgart, Michael Pradel University of Stuttgart
Pre-print
11:54
18m
Talk
Abstraction-Aware Inference of Metamorphic Relations
Research Papers
Agustin Nolasco University of Rio Cuarto, Facundo Molina IMDEA Software Institute, Renzo Degiovanni Luxembourg Institute of Science and Technology, Alessandra Gorla IMDEA Software Institute, Diego Garbervetsky Departamento de Computación, FCEyN, UBA, Mike Papadakis University of Luxembourg, Sebastian Uchitel Imperial College and University of Buenos Aires, Nazareno Aguirre University of Rio Cuarto and CONICET, Marcelo F. Frias Dept. of Software Engineering Instituto Tecnológico de Buenos Aires
12:12
18m
Talk
Predicting Configuration Performance in Multiple Environments with Sequential Meta-Learning
Research Papers
Jingzhi Gong Loughborough University, Tao Chen University of Birmingham
Pre-print