I’m a PhD student at IMDEA Software Institute, under the supervision of Alessandra Gorla. My main research interests are Software Testing and Program Analysis. In my previous works, I mostly focused on Symbolic Execution.

Publications

Improving Patch Correctness Analysis via Random Testing and Large Language Models Facundo Molina, Juan Manuel Copia, Alessandra Gorla. To appear in 17th IEEE International Conference on Software Testing, Verification and Validation (ICST '24), Toronto, Canada, May 2024. [ .pdf  ]

Precise Lazy Initialization for Programs with Complex Heap Inputs Juan Manuel Copia, Facundo Molina, Nazareno Aguirre, Marcelo Frias, Alessandra Gorla, and Pablo Ponzio. In the 34th IEEE International Symposium on Software Reliability Engineering (ISSRE '23), Florence, Italy, October 2023. [ https | .pdf  ]

LISSA: Lazy Initialization with Specialized Solver Aid Juan Manuel Copia, Pablo Ponzio, Nazareno Aguirre, Alessandra Gorla, and Marcelo Frias. In the 37th IEEE/ACM International Conference on Automated Software Engineering (ASE '22), Oakland Center, Michigan, USA, October 2022. [ https | .pdf  ]

Use of test doubles in Android testing: an in-depth investigation Mattia Fazzini, Chase Choi, Juan Manuel Copia, Gabriel Lee, Yoshiki Kakehi, Alessandra Gorla, and Alessandro Orso. In Proceedings of the 44th International Conference on Software Engineering (ICSE '22), Pittsburgh, USA, May 2022. [ https | .pdf  ]

Software Artifacts

LISSA and PLI are both symbolic execution techniques whose purpose is to improve symbolic analysis of programs with complex heap-allocated inputs and complex preconditions. [ code  ]

SymSolve is an efficient bounded exhaustive solver for symbolic structures with complex representation invariants. SymSolve was built to decide the satisfiability of structural constraints of partially symbolic heaps that arise during symbolic execution using lazy initialization. [ code  ]

PySEAT is a symbolic execution engine for Python programs. PySEAT also implements lazy initialization to support symbolic representation of heap-allocated objects and is able to automatically generate tests for these programs. PySEAT was part of my Master's thesis. [ code | .pdf  ]

Research Team