University of Twente Student Theses

Login

AValAnCHE: Improving robustness of the VerCors verification toolset using fuzzing

Nauta, Wander (2025) AValAnCHE: Improving robustness of the VerCors verification toolset using fuzzing.

[img] PDF
1MB
Abstract:VerCors is a verification toolset for sequential and concurrent programs. Given a suitably annotated program, written in one of a variety of programming languages, it can show both functional correctness and data race freedom. The applicability and usability of the toolset has already been shown in a number of case studies. However, VerCors cannot yet be used to verify its own correctness: it is written in Scala, which is not one of the supported programming languages. The toolset as a whole is also much larger and more complex than programs verified so far. Instead, automated tests are used to increase confidence in its correctness and robustness, and so confidence in its results. We have investigated whether adding fuzzing to the VerCors testing strategy could aid in finding robustness issues in VerCors itself, especially in the face of unexpected inputs. We have shown that grammar-based fuzzing can be successfully used to find robustness issues in VerCors. In total, we have found 28 confirmed new crashing bugs in the toolset. To support our comparison of different fuzzing approaches and aid integration into the VerCors testing strategy, we have developed a tool tailored to VerCors itself.
Item Type:Essay (Master)
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:54 computer science
Programme:Computer Science MSc (60300)
Link to this item:https://purl.utwente.nl/essays/106440
Export this item as:BibTeX
EndNote
HTML Citation
Reference Manager

 

Repository Staff Only: item control page