http://klee.llvm.org/ - это инструмент анализа программ, который работает благодаря символическому исполнению и решению ограничений, нахождение возможных входов, которые могут привести к сбою программы, и вывод их в качестве тестовых примеров. Это чрезвычайно впечатляющая часть техники, которая до сих пор дала хорошие результаты, включая обнаружение множества ошибок в коллекции программных средств Unix с открытым исходным кодом, которые считались одним из наиболее тщательно протестированных программ, когда-либо написанных.
Мой вопрос: что он не делает?
Конечно, любой такой инструмент имеет присущий ему предел, что он не может прочитать мнение пользователя и угадать, каким должен был быть выход. Но, оставляя в стороне, в принципе невозможно, большинство проектов пока не используют Klee; каковы ограничения текущей версии, какие ошибки и рабочие нагрузки еще не обрабатываются?