NaNofuzzNaNofuzz is a fast and easy-to-use Automatic Test sUite Generator (ATUG) for TypeScript that combines human insight, heuristics, and property checking to help you quickly reach working code nirvana. NaNofuzz is intended to be used during testing and development and is available in the the VS Code Marketplace. NaNofuzz proposes an initial set of tests with a single button click. You then improve these tests by manually annotating the correctness of specific examples and/or by adding property validator functions that evaluate correctness at scale. NaNofuzz coherently organizes and prioritizes all test results on a single screen so that you can see at a glance what your suite is testing---as well as what it may be missing. Tutorial and PlaygroundOur NaNofuzz examples repository, provides a 10-minute NaNofuzz tutorial and several example buggy programs that you can use to get familiar with NaNofuzz. Within the Getting startedTo use NaNofuzz in your own projects:
Scope and LimitationsNaNofuzz is an experimental testing platform developed by the Accelerated Testing Research Program at Carnegie Mellon University's School of Computer Science. Therefore, NaNofuzz is not intended for production use; however, contributions are welcome to address the limitations below. NaNofuzz supports exported standard and arrow functions with any mixture of the following parameter types:
NaNofuzz automatically generates a test suite in these formats for use in CI:
The following are not yet supported:
If the NaNofuzz button does not appear above your function, that usually indicates that the function is not exported or one of its inputs is comprised of types that are not yet supported (see above). ContributingWe welcome outside contributions to address the limitations above and to correct open issues. Please see our Contributor's Guide for more details about how you can get involved. NaNofuzz Research PaperTo reference NaNofuzz in your own research, please cite our ESEC/FSE'23 paper:
The paper above covers the 0.1.x version of NaNofuzz. A lot has changed since then, and we plan to publish new papers soon! The NaNofuzz MascotMeet NaNcy, the Silky Anteater! Silky anteaters are wonderfully-adapted, small, fuzzy creatures known to find and consume large quantities of bugs on a daily basis. Therefore, NaNcy is NaNofuzz's beloved mascot on our journey to find and eliminate more bugs. |