Does Writing Tests Slow Down Development Time?
Yes, and no. It all depends how you do it, AND what you count in “development time”.
First of all, good automated tests can “massage” your code every day, pretty much as often as desired. They will help the team find unintentional mistakes and thinking failures much earlier than without automation (most non-automated testing is done late in the development process). This allows much earlier correction (before problem accumulate) and also reduces the overall amount of bugs. So from this aspect, it can reduce the overall duration of the project very significantly.
If we write automated tests (unit, acceptance, integration, etc.) after the code is written, a lot of the manual work of coding is already done (design, coding, manual debugging, manual developer testing, etc.), so in this case the design and writing of the tests is an additional effort, and yes, in this case it increases the “development time” of the said piece of functionality. However, if done well, it can still reduce overall project effort and duration as mentioned earlier.