Software Testability is historically referred to the ease with which inputs can be selected to satisfy a specific structural testing criterion. It is regarded as a measure of the difficulty incurred when testing a component or application. It is not an intrinsic property of a software artifact and can not be measured directly. Software testability, consider a simple analogy that shows how testability can enhance testing. Software testing would be the actual mining process,. and software testability would be the geologist’s survey before mining begins.