As your test suite gets bigger and bigger, it might start taking too long to run. Even if strategies to reduce the number of times you need to run the whole test suite are in place, there will be a time where you want all your tests to run and act as the gatekeeper of your releases.
Hence, a slow test suite can actually impair the speed at which we are able to develop and release software.
While great care must always be taken to ensure that our tests are written in the fastest possible way (avoid throwing time.sleep calls everywhere, they can be very good at hiding themselves in the most unexpected places), slow components of the software that we are testing should be replaced with fake implementations every time so that it is possible that we can get to a point where there isn't much else we can do and making our test suite faster would be too complex or expensive.
When we get to that point, if we wrote our tests such that they are properly...