通过测试活动提高软件产品的质量是测试人员的重要任务之一。在有限的测试时间和资源的情况下,及时的交付高质量的软件产品给客户,是测试人员的主要目标之一。那么,什么样的软件产品可以称为高质量的?测试人员在测试过程中,执行的测试用例完全覆盖了需求规格说明中的需求条目,是不是就可以认为测试对象的质量满足了要求?或者说,软件产品的所有功能都可以正常运行,并且按时交付给了客户,客户是否就对该产品的质量感到满意?
为了更好的回答该问题,测试人员有必要首先了解一下质量的含义。质量是什么?IEEE Std 610中对质量的定义是“组件、系统或者过程满足指定需求或者用户/客户需要以及期望的程度”。Jerry Weinberg对质量的描述是“Quality is the value to some person(质量是可以为一些人提供的价值)”。
案例描述 闹钟提醒是手机的常见功能,也是手机用户经常使用的功能。针对手机闹钟提示功能,开发人员和实际手机用户对它的质量级别,就会有不同的观点。 对于开发人员而言,闹钟提醒的功能主要体现在设置什么时间,手机能够准确的按照设置的铃声准时发出提示,例如:手机在工作日(星期一、星期二、星期三、星期四和星期五)早上7:00提供闹钟提示。从开发人员而言,这样的闹钟提示是可以接受的(实现了闹钟提示的基本功能),即其质量处于可以接受的水平。 对于手机用户而言,除了要求闹钟提示功能能够按照设置时间和方式进行准确工作之外,还会在易用性、可靠性等方面有特定的要求。例如:设置的闹钟时间是不是只是提示一次,还是在没有外部干预的时候,就会无限制的提示?或者闹钟提示在手机关机的时候,就无法进行闹钟提示?对于用户在这些方面的期望,开发人员在开发环境中可能并没有很好的考虑。手机闹钟提示假如在这些易用性等方面的表现欠佳,那么,它们在用户心目中的质量级别将会大打折扣。 |
为了在测试过程中尽量多的覆盖质量特性,测试人员需要清楚的了解产品有哪些质量特性组成?什么质量特性是客户最关注的?因此,测试人员在进行具体的测试用例设计和执行之前,需要定义该软件产品应该满足的质量特性集。
下图是ISO/IEC 9126质量模型中定义的内部质量和外部质量6大质量特性,每个质量特性又包含不同的之质量特性。ISO/IEC 9126质量模型可以为测试人员提供比较全面的质量特性,测试人员可以根据具体的项目和产品特点对这些质量特性进行裁减。
因此,测试人员在测试过程中,需要站在不同的利益相关者的角度,对测试对象的质量进行检查和验证,例如:测试人员除了关注需求文档中明确描述的需求条目之外(有时候称之为显现的需求),还应该关注隐显的需求,比如:竞争对手的产品特征、用户的群体特征和使用习惯等。因此,在测试过程中,测试人员除了关注测试对象的功能测试之外,还需要针对其他非功能特性进行测试。
转载自http://www.51testing.com/html/07/n-235507.html