GAssert: A Fully Automated Tool to Improve Assertion Oracles
Valerio Terragni, Gunel Jahangirova, Paolo Tonella, Mauro Pezz\`e

TL;DR
GASSERT is an automated tool that enhances assertion oracles in Java programs by reducing false positives and negatives using a novel co-evolutionary algorithm, improving the reliability of program assertions.
Contribution
It introduces GASSERT, the first fully automated tool to improve assertion oracles, employing a co-evolutionary algorithm guided by multiple fitness functions.
Findings
Reduces false positives and negatives in assertions
Automatically improves assertion quality in Java methods
Uses a novel co-evolutionary algorithm for assertion refinement
Abstract
This demo presents the implementation and usage details of GASSERT, the first tool to automatically improve assertion oracles. Assertion oracles are executable boolean expressions placed inside the program that should pass (return true) for all correct executions and fail (return false) for all incorrect executions. Because designing perfect assertion oracles is difficult, assertions are prone to both false positives (the assertion fails but should pass) and false negatives (the assertion passes but should fail). Given a Java method containing an assertion oracle to improve, GASSERT returns an improved assertion with fewer false positives and false negatives than the initial assertion. Internally, GASSERT implements a novel co-evolutionary algorithm that explores the space of possible assertions guided by two fitness functions that reward assertions with fewer false positives, fewer…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Evolutionary Algorithms and Applications · Software Testing and Debugging Techniques
