软件可测试性(software testability),理学-计算机科学技术-软件工程-软件工程管理-软件质量工程-软件质量属性,对软件测试以证明其满足需求规约的难易程度。软件的一种开发期质量属性。软件的可测试性也可理解为在一定的时间和成本前提下,进行测试设计、测试执行以此来发现软件的问题,以及发现故障并隔离、定位其故障的能力特性。美国计算机科学家J.巴哈(James Bach)这样描述可测试性:软件可测试性就是一个计算机程序能够被测试的难易程度。软件可测试性不是一个内在性质,不像软件大小一样可以直接量测。软件可测试性是一个外在性质,由待测试的软件及测试目标、方法及测试资源(测试环境)之间的相互关系来决定。若软件的可测试性低,可能会造成测试工作的增加。在一些极端的情形下,缺乏可测试性可能会使部分甚至全部的测试或软件需求验证无法进行。一般来说可测试性很好的软件必然是一个强内聚、弱耦合、接口明确、意图明晰的软件,而不具可测试性的软件往往具有过强的耦合和混乱的逻辑。一个软件的可测试性可以通过检查以下特征进行衡量:①可操作性。即运行得越好,被测试的效率越高。②可观察性。