The idea that testing is better than type checking doesn't match my experience. The ratio of the cost of correcting an error found late over correcting it early may run into the hundreds or more. I agree with the general observation that shorter code is better. Concision is a great virtue. Adding type information doesn't take much extra time, or result in much extra code.
Type declarations make the text so much more clear.
For any significant development whose results are meant to stay around, I don't see why anyone would want to renounce the benefits of typing. But that's not necessarily the case. You can have a very incremental and extremely fast recompilation cycle with full type checking. Second, effective static typing requires an appropriate type system. But this objection goes away with a well-designed type system.