前言
了解完软件质量需求的基本概念后,需要了解软件在这些方面有什么具体的要求。即研读需求文档,做需求分析。了解完软件质量需求的基本概念后,需要了解软件在这些方面有什么具体的要求。即研读需求文档,做需求分析。
1.1 测试需求分析的过程
(1) 收集和研读文档,提出并解决问题,整理需求信息;
(2) 功能拆分、功能描述、需求整理;
(3) 编写测试点;
(4) 需求评审;
收集和研读的文档,包括不限于开发需求分析、开发计划、开发设计文档、详细设计文档、编码相关文档、用户使用说明、帮助文档等。
评审需求是不是与客户要求一致,与开发的理解是否一致。
1.2 研读需求文档
1.2.1 研读文档主要任务
(1) 提取有用的需求信息;
(2) 提出需求中不清晰、不理解、不明白的问题;
a) 和用户、业务人员、产品经理或产品设计人员、开发人员等沟通。
1.2.2 怎么研读文档
1.2.2.1 总体上
(1) 分析软件的用户群,分析用户的实际需要;
(2) 分析软件的开发环境、开发语言、数据类型;
(3) 分析软件架构、软件的运行环境和平台、数据库类型;
(4) 分析软件要实现哪些目标(功能、性能、界面、易用性、兼容性、安全性)以及具体的要求是什么;
(5) 分析软件有哪些功能,每种功能要完成什么业务,这些业务应该怎么实现,业务逻辑是什么,业务流程是怎样的;
(6) 分析功能或业务间的联系,哪些业务更关键或重要;
(7) 明确测试周期、测试目标、测试范围。
分析软件的用户群,是分析软件给哪些人用,不同的用户群,对软件的要求不同。比如,测试计算器,假如给小学生用,那么只用加减乘除;假如给初中生用,可能要加平方根等;假如给高中生用,可能要加高等函数等。分析用户群需要通过思考来判断和决定,而不光靠用户说、看文档,因为可能用户不知道、或者没文档。
分析开发环境、开发语言、数据类型。比如,一个文本框,只能输0-9之间的数字。该如何测试这个文本框呢?可能测试输入-1和10。假如,文本框的数据类型是byte类型,则输入-1和10是必要的。假如,文本框的数据类型是char类型,则输入-1和10是多余的,毫无用处,此时,应该输入-1的ASCII码47,和10的ASCII码58。比如,一个文本框,只能输入整数,不限制位数。假设输入为byte类型,那么,Vb中,整数是0-255,java中,是-128到+127。
分析软件架构。分析软件是单机版、CS还是BS,不同的架构,测试方法不同。
1.2.2.2 细节上
(1) 分析每个模块或功能上实现的功能;
(2) 涉及的开发原理包括数据类型;
(3) 从用户使用场景角度分析业务流程;
(4) 记录业务规则。
1.2.2.3 实施
以情景再现的形式写出需求信息。
1.2.3 研读需求文档案例
拿到一个项目,怎么入手?
即时贴程序部分需求说明:
(1) 便签的数量最多为50个;
(2) 便签标题字数最多为50个字节;
(3) 便签的正文文字数量最多为200个;
(4) 年份只能设置在1900-2100之间;
如何研读文档?带着思考、带着问题读文档。需求分析是分析软件要干什么?能干什么?怎么做这些事?怎么做合理?
信息:知道的,确定的内容,可行的想法(方案),应该这样做才合理的想法;
问题:不确定的内容;需思考或提问咨询;
信息:
即时贴是提醒做事的软件,便签是一个窗口,记录一件事情
便签有藏起来的功能
便签到时间自动弹出,时间提供年月日时分秒,时间是未来的
如何自动删除:关闭便签后自动删除
如何手动删除:显示全部便签,找到需求删除的进行删除
如何显示:显示时,铺满屏幕,大小不可更改
查看以前的便签:提供历史存储功能
(1) 0<=便签数量<=50
(2) 便签数量超过50怎么处理(置灰或弹框提示,可以不问)
(3) 便签可以不断添加
(4) 便签有标题,0<字数<=40(个字符)
(5) 便签有正文,0<=字数<=200(个字符)
(6) 年份得从今天的年份开始
问题:
(1) 什么是即时贴
(2) 便签是什么,做什么的(提醒做事的软件)
(3) 便签可以删除吗,手动删除,自动删除(弹出关闭后)
(4) 标题字数可以为0吗
(5) 正文字数能否为0
(6) 为什么要有年份,年份有什么用
整理后信息:
即时贴是提醒做事的软件,便签是一个窗口,记录一件事情
便签可以不断添加,0<=便签数量<=50,便签数量超过50后命令置灰
便签有标题,0<字数<=40(个字符)
便签有正文,0<=字数<=200(个字符)
设置弹出时间,时间提供年月日时分秒,时间是未来的
便签自动保存
命令藏起来,关闭也藏起来
显示全部便签,找到你需求的,可以删除
便签到时间自动弹出
关闭便签后自动删除
提供历史查询功能
可以隐藏全部便签
显示时,铺满屏幕,大小不可更改