Multi-core processors are now pervasive, spanning from embedded systems and mobile devices, to PCs, all the way to high-end servers and distributed systems. To unleash the computing power of multi-core processors, developers have to write concurrent (multi-threaded) programs. However, writing correct and efficient concurrent programs is difficult and error-prone.

An effective approach to verify the correctness of object-oriented concurrent classes consists of automatically generating concurrent tests and checking if they exhibit concurrency failures by exploring their interleaving spaces. A concurrent test consists of multiple concurrently executing threads that exercise the public interface of a class under test. The high cost of exploring interleaving spaces poses great challenges when generating concurrent tests.

During my PhD and Post-doc I proposed new techniques to effectively generate concurrent tests. Currently, I am working on fruther improve the effectiveness of concurrent test generators.

Related publications: [1, 2, 3, 4, 5]

  1. ICST 2019
    Coverage-Driven Test Generation for Thread-Safe Classes via Parallel and Conflict Dependencies Valerio Terragni, Mauro Pezzè, Francesco Adalberto Bianchi In Proceedings of the 12th IEEE Conference on Software Testing, Validation and Verification , pages 264-275 , 2019 :trophy: IEEE TCSE Distinguished Paper Award [BIBTEX] [Abstract] [PDF] [Slides] [DOI]

    @inproceedings{terragni-icst-2019, author = {Terragni, Valerio and Pezz{\`{e}}, Mauro and Bianchi, Francesco Adalberto}, title = {Coverage-Driven Test Generation for Thread-Safe Classes via Parallel and Conflict Dependencies}, booktitle = {12th {IEEE} Conference on Software Testing, Validation and Verification}, pages = {264-275}, year = {2019}, doi = {10.1109/ICST.2019.00034} }

  2. ASE 2018
    Effectiveness and Challenges in Generating Concurrent Tests for Thread-Safe Classes Valerio Terragni, Mauro Pezzè In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering , pages 64-75 , 2018 [BIBTEX] [Abstract] [PDF] [Slides] [DOI]

    @inproceedings{terragni-ase-2018, author = {Terragni, Valerio and Pezz{\`{e}}, Mauro}, title = {Effectiveness and Challenges in Generating Concurrent Tests for Thread-Safe Classes}, booktitle = {33rd {ACM/IEEE} International Conference on Automated Software Engineering}, pages = {64-75}, doi = {10.1145/3238147.3238224}, year = {2018} }

  3. ESEC/ FSE 2017
    Reproducing Concurrency Failures from Crash Stacks Francesco A. Bianchi, Mauro Pezzè, Valerio Terragni (Authors are listed alphabetically) In Proceedings of the 11th Joint Meeting on Foundations of Software Engineering , pages 705-716 , 2017 [BIBTEX] [Abstract] [PDF] [Slides] [Replication Package] [DOI]

    @inproceedings{bianchi-fse-2017, author = {Bianchi, Francesco A. and Pezz{\`{e}}, Mauro and Terragni, Valerio}, title = {Reproducing Concurrency Failures from Crash Stacks}, booktitle = {11th Joint Meeting on Foundations of Software Engineering}, pages = {705-716}, year = {2017}, doi = {10.1145/3106237.3106292} }

  4. ICSE 2016
    Coverage-driven Test Code Generation for Concurrent Classes Valerio Terragni, Shing-Chi Cheung In Proceedings of the 38th ACM/IEEE International Conference on Software Engineering , pages 1121-1132 , 2016 [BIBTEX] [Abstract] [PDF] [Slides] [DOI]

    @inproceedings{terragni-icse-2016, author = {Terragni, Valerio and Cheung, Shing{-}Chi}, title = {Coverage-driven Test Code Generation for Concurrent Classes}, booktitle = {38th {ACM/IEEE} International Conference on Software Engineering}, pages = {1121-1132}, year = {2016}, doi = {10.1145/2884781.2884876} }

  5. ICSE 2015
    RECONTEST: Effective Regression Testing of Concurrent Programs Valerio Terragni, Shing-Chi Cheung, Charles Zhang In Proceedings of the 37th IEEE/ACM International Conference on Software Engineering , pages 246–256 , 2015 [BIBTEX] [Abstract] [PDF] [Slides] [DOI]

    @inproceedings{terragni-icse-2015, author = {Terragni, Valerio and Cheung, Shing{-}Chi and Zhang, Charles}, title = {{RECONTEST:} Effective Regression Testing of Concurrent Programs}, booktitle = {37th {IEEE/ACM} International Conference on Software Engineering}, pages = {246--256}, year = {2015}, doi = {10.1109/ICSE.2015.45} }