Well pure unit tests cannot always capture all unanticipated ways of components to badly interact. Some integration tests can be useful too. But indeed we need to make sure that they are fast to execute and not to complicated to fix and maintain.