Most of the advantages you list are about testing, not testing before coding, which is what I was curious about.