“If you’re doing unit tests right, type or not will make no difference”
I don’t see it that way. Static typing is concerned with abstractions of logic, tests are concerned with behaviour. They address different things. One is concerned with deducing logical constraints and the other is concerned with inductive validation of behaviour. Apples and oranges. The question of bug-free code isn’t really interesting to me, a moderate application of both strategies is more efficient than the exclusive application of one strategy over the other. One size does not fit all.