Никто не может дать гарантий что тест написан правильно, и что тесты покрывают все возможные варианты кода.
То есть разница в том, что формальная верификация покрывает все возможные варианты, а тесты только определенные.
Это всё прикладная мифология. В реальных проектах (ну, если судить по тому, что есть в открытом доступе), в этих доказательствах содержатся сотни аксиом, и как проверить, что в них нет ошибок? Про Lean вон любители Coq вообще говорят, что он неконсистентен, и что доверять его доказательствам нельзя. Ну, и т.д. и т.п. Серебрянной пули нет.