可测试性分析导语
认知可测试性
·质量的先验知识。如果我们已经相当了解一个产品了,我们不需要太多测试。
·容忍失败。所需的质量要求越低,或产品可以承担的风险越大,就越不需要测试。
项目相关的可测性
·变更控制。频繁和破坏性的变化导致重新测试,并且使我们现有的产品知识失效。谨慎的变更控制有助于产品在测试阶段的发展。
·信息的可用性。我们得到所有所需的信息进行有效测试。
·工具的可用性。提供我们所有需要的工具进行有效测试。
·测试项目的可用性。我们可对所有相关版本的产品进行访问和交互。
·沙盒。我们可以自由地做任何值得做的测试(也许包括变异测试或破坏性测试),而不用担心打扰用户、其他测试员或开发过程。
·环境可控性。我们可以控制测试环境周围所有潜在的实验相关变量。
·时间。几乎没有时间破坏可测试性。我们需要时间来思考,准备,然后应对意外。
价值相关可测试性
·预测的可用性。我们需要途径来侦测每一个值得发现的问题。一份详尽的规范就是预测的一个例子,但也有很多其他种类的预测(包括人和工具)可以起作用。
·预测的权威。我们受益于发现潜在重要问题的预测。
·预测的可靠性。我们受益于可以一直信赖去实施,并在许多情况下依旧可行的预测。
·预测的精度。我们从对专门问题进行识别的预测中受益。
·预测的廉价。我们受益于无需太多的成本或努力就能获取或操作的预测。
·用户稳定与统一。用户越少,用户之间的多样性与不和谐性越低,测试越容易。
·用户熟悉度。我们越是了解用户,就越容易对他们进行测试。
·用户可用性。我们能够和用户交谈,就越容易对他们进行测试。
·用户数据的可用性。我们对真实数据的访问越多,就越容易测试。
·用户环境的可用性。访问实际使用环境能够提高测试。
·用户环境的稳定和统一。用户环境和平台更少的变化使得测试更容易。