You seem to forget what tests are.
They're representative of scenarios which your application can enter.
So if the tests were mocked and a bug went live he'd still notice, after all it means your software behaved incorrectly and now you gotta clean up the pieces.
But the purpose of a test is to catch a bug before it goes live.