基于质量属性的测试类型

2022-12-02  本文已影响0人  robot_test_boy

质量属性是产品需求的抽象模型,能够帮助开发理解要从哪些角度去设计产品,才能满足用户明确的和隐含的需求;同理,质量属性也能帮助测试者理解要从哪些角度(测试类型)去验证产品,从而基于质量建立一套完整的测试方法。

产品、测试类型和质量属性的关系图。

测试者对测试类型并不陌生,如功能性测试、性能测试、压力测试、兼容性测试、易用性测试、可靠性测试等。但大家对这些测试类型的含义又常有自己的理解,例如经常听到同事争论该如何划分压力测试、性能测试、稳定性测试和可靠性测试——其实解决这个问题最简单、有效的方式就是使用质量属性来定义测试类型,即回归到测试类型的本质。

对压力测试、性能测试、稳定性测试这几个概念进行对比分析。

1)如果测试负载在系统允许的负载范围内,那测试的是系统的功能,此时的测试属于功能性测试;若在此基础上再加大测试时间,那就是稳定性测试了,此时关注的是系统的成熟性。

2)如果测试负载正好和系统允许的负载一致,那测试的就是系统的性能,此时的测试属于性能测试

3)如果测试负载超过系统允许的负载范围,这时对系统来说属于一种“异常”情况,那测试的就是系统容错性了,此时的测试属于可靠性测试中的压力测试

我们也可以利用质量属性来定义测试类型,最直接的方式就是把质量属性中的“某某性”,换成“某某性测试”。例如易用性包含可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性和易访问性,对应的测试类型就是可辨识性测试、易学性测试、易操作性测试、用户差错防御性测试、用户界面舒适性测试和易访问性测试。

由于质量属性是标准性的,所以这种方法使得测试类型也具有了标准性,不容易出现歧义。建议大家借助质量属性,把正在使用的测试类型梳理一遍,以帮助团队更好地理解这些测试类型的目标,并达成一致。常见的测试类型和质量属性的关系,如图所示。

摘取自刘琛梅老师的《测试架构师修炼之道:从测试工程师到测试架构师 第2版》

上一篇下一篇

猜你喜欢

热点阅读