The differences between code bases that have tests and those that don't are so significant in most cases that they swamp most other criteria for good design. When you have tests you can make things better, when you don't often you don't really know whether you are or not.
-- MichaelFeathers