What is testable code?

We are improving quality of code and trying to develop more unit tests. The question that developers asked  was  “How to make code testable ?”

 First and foremost, its loosely coupled, taking advantage of dependency injection (and auto-wiring), composition and interface-programming. Testable code is also readable – meaning it leverages single responsibility principle and Liskov substitution principle.
A few practical suggestions are listed in 
More recommendations are in 
It is slightly too theoretical – “ the trick is translating these abstract concepts into concrete decisions in your code.”