Existing project/research into getting AST snapshot to replace unit testing


I'm looking for a crate, or existing research that would allow me to do away with unit testing while retaining the value add of detecting regressions in libs and bins, or show that the following is impossible:

Let's say for a rust crate, it should be possible to run a tool that would derive from the AST unit tests for every branch, or derive a Eq'able data structure to mechanically detect semantic differences in functions, and modules. The workflow I have in mind would be to generate a snapshot at commit time to compare with the previous snapshot and get a list of api changes, api behavior changes and then signoff on wanted changes by committing the validated snapshot in the repo. Any unwanted changes would have to be deal with before committing. It should also be possible to automatically derive the semver for the crate with the tool as well.

Are there tools that provide this workflow? My google-fu hasnt found anything at this time, I might not be using the right keywords to describe the above features.


I don't know about automated generation of unit tests, but rust-semverver is a serious attempt to compute semver-compatibility from source code.

Thank you, I'll take a look