全程软件测试之测试需求分析与计划(1)
作者:网络转载 发布时间:[ 2015/10/29 14:06:49 ] 推荐标签:软件测试管理
在项目启动之后,要着手软件项目的计划,包括软件测试计划。软件测试计划是整个开发计划的组成部分,同时,它又依赖于软件组织过程、项目的总体计划、质量文化和方针。在测试计划活动中,首先要确认测试目标、范围和需求,其中“测试需求分析”是关键任务,然后在测试需求基础上制定测试策略,并对测试任务、时间、资源、成本和风险等进行估算或评估。
无论何时进行估算,我们都是在预测未来,并会接受某种程度的不确定性。软件项目计划的目标是提供一个框架,不断收集信息,对不确定性进行分析,将不确定性的内容慢慢转化为确定性的内容,该过程终使得项目测试负责人能够对资源、成本及进度进行越来越合理、准确的估算。这些估算是软件项目开始时在一个限定的时间框架内做出的,并且随着项目的进展而不断更新。所以,测试计划强调的是一个过程,计划(Planning)的过程,而不仅仅是为了一个文档——“测试计划书”(Test Plan)。
测试计划活动过程伴随着需求文档的审查,而需求文档的评审反过来也有利于测试计划的制定。而且,测试计划必须建立在软件需求定义之上,为软件的质量需求验证和确认活动的开展进行规划和指导。
2.1软件测试的目标和基本需求
在分析测试需求之前,先要确定测试目标,而测试目标的确定,取决于质量要求。虽然在理论上,对软件质量的要求是比较明确的,但对不同的软件开发项目,其质量要求是不一样的。根据特定的质量要求,确定测试目标。然后再根据测试目标,来分析测试需求。
2.1.1质量要求
关于什么是软件质量,本书在第1.1.1节进行了详细讨论,包括软件产品的质量属性,如功能性、易用性、性能、安全性、兼容性、可用性、可维护性、扩展性等。但是,仅仅根据这些质量属性不够,还要参考业务领域专业知识、行业标准、地方标准或其他规范等,才能明确特定产品的质量要求。只有明确质量要求,才能明确测试目标。让我们先讨论特定软件产品的质量要求。
对质量的具体要求,可以参考国际标准ISO/IEC 25030的相关描述,质量不仅局限于终用户的需求(通常指外部质量要求、软件使用质量),还要考虑产品或项目的干系人(Stakeholders)的质量要求,包括组织的管理层、系统运维等,对软件内部质量也有具体要求,包括软件的可维护性、可扩充性等。从质量来看,用户的需求会显得更重要,我们会在使用质量(Quality in Use)上有更多的关注,使用质量的具体要求见图2-1。
手机也是大家熟悉的产品,不同的用户群对一部智能手机的要求也是不同的,如低档手机和手机有着不同的质量要求、老年人和年轻人对手机也有不同的期望,商务人士对手机也有一些特定的需求(如Blackberry的实实在在的全键盘)。低档手机的质量要求如下。
·通话正常、稳定。
·通话质量要有一定保障。
·待机时间长。
·安全,电池不能发生爆炸。
·外观大气美观,不要太重。
·通讯录、短信、闹钟等功能使用方便。
·支持手写输入功能。
但对智能手机,对手感、用户体验、性能、外观质感等有更高的要求。虽然不同的产品类型、不同的应用领域,功能的质量要求是有差异的,但一般来说,通用的功能质量要求如下。
·程序安装、启动正常,有相应的提示框、错误提示等。
·每项功能符合实际要求。
·每一项功能能正常运行、输出结果正确。
·能处理各种不正常的操作,对异常数据的输入可以进行提示、容错处理等。
·系统的界面清晰、美观。
·菜单、按钮操作正常、灵活,能处理一些异常操作。
·能接受正确的数据输入,如测试大输入的文字数、单双字节、特殊符号等。
·数据的输出结果准确,格式清晰,可以保存和读取。
·功能逻辑清楚,符合使用者习惯。
·系统的各种状态按照业务流程而变化,并保持稳定。
·支持各种应用的环境。
·能配合多种硬件周边设备。
·软件升级后,能继续支持旧版本的数据。
·与外部应用系统的接口有效。
用户界面(User Interface,UI)是和用户进行交互的窗口。仅从这一点,可以清楚地知道用户界面友好程度的重要性。用户界面是否友好直接影响用户对软件产品或软件服务的满意度,即我们经常提到的用户体验,用户界面设计是给用户一个良好的体验,不仅使用软件简单、方便和明了,而且心情舒畅、愉悦。对于Web应用,更强调网页内容和文字表述,但这些往往是开发人员容易忽视的地方。对于开发人员来说,注意力常常集中在功能的实现上。文字不仅误导用户的操作或影响用户的体验,而且有时可能会引起法律方面的问题。测试人员应确保内容表达符合习惯,更专业、流畅,有时需要招聘1~2个语言学(文学、中文、英文、日文等)专业的人员参加测试队伍。在UI上,主要的质量要求如下。
·通用框架、浮动窗口和文字等整体上布局合理、位置恰当。
·文字没有乱码、换行正常,而且内容格式、顺序正确。
·文字标记和超链接可以打开和跳转成功。
·色彩搭配要协调,要形成对比强烈的色彩效果,也要恰到好处。
以前面Google Talk作为例子,其产品的质量要求一定会包括功能正确、性能好、易用,但这样的质量要求还不够明确,对设定测试目标帮助不大,还需要进一步分析其质量要求。对于功能,可以逐条列出其主要功能,然后分析功能在质量上有没有一些特定的要求。例如:
(1)支持语音、视频通话,要确定语音、视频通话的质量要求,是否支持电信级业务服务水平即严格的QoS标准(服务质量)?支持高清视频(如720p、1080p等)通话吗?视频通话质量能够根据网络状况可调整吗?语音在延迟、回声、噪音、颤音等上面有具体的质量要求吗?视频通话对带宽低限制是多少?
(2)是否支持基于行业标准的会话发起协议(SIP)?
(3)单击姓名打开聊天窗口,可同时打开任意多个聊天窗口。可能会问,多能打开多少个窗口?有没有性能问题?
(4)邮件、通讯录等涉及个人隐私,在安全性上有什么要求?
(5)口令设置有哪些参数约束?这些约束能否保证其较高的安全性?
(6)好友列表有没有限制(容量问题)?
(7)不同颜色的小球图标及不同的符号表示好友的在线状态,多少时间(如几十、几百毫秒,几秒)刷新一次?
(8)正常连接情况下,添加好友的时间是多少?
对应Google日历,可能简单些,其质量要求和一般Web应用软件的质量要求基本一致,主要体现在功能、性能、安全性、易用性等主要方面的同时,可能还会有下列的质量要求。
(1)功能:计算正确、显示正常、逻辑合理等。
(2)性能:正常时每个页面刷新显示时间不超过3秒,高峰时不超过10秒。
(3)安全性:登录安全,被邀请人只能看到当前事件,不能查看他人的其他事件等。
(4)易用性:日历能在不同显示方式之间方便、快捷切换,显示内容也能根据不同方式改变、能支持“直接拖拽”操作日历等。
为了进一步理解产品质量要求,可以看看大家熟悉的拼音输入法有什么具体的质量要求。《Windows软件测试探秘》一书第6章给出很好的实例,如表2-1所示。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11