一、获取测试对象也就是我们最初的工作:测试需求的分析
测试需求的分析为四个部分:
1、明确需求的范围
2、明确每一个功能的业务处理过程
3、不同的功能点作业务的组合
4、挖掘显式需求背后的隐式需求
二、分别阐述:
1、 明确需求的范围(目标:需求中包括了多少功能点)
1. RTM中的SRS列表(粒度)
2. QC中的需求描述 (不同层次)
3. UML的用例视图 (Actor Usecase)
2、 明确每一个功能的业务处理过程
1. 拆点: 对应的每一个功能点将其对应的输入,处理和输出进行提取
2. 连线 :将每一功能所对应的输入,处理和输出形成业务活动图;
3、不同的功能点作业务的组合
4、挖掘显式需求背后的隐式需求
1、 测试需求分析何时进行?
理论上SRS评审通过以后但是评审之前测试人员处于游离状态,我们的工作应该尽早的开始,所以事实上在需求获取结束后就开始测试需求分析
2、 为什么要进行测试需求分析?
1、把不直观的需求-----转变为-----直观的需求(用例图/活动图)
a.使得测试范围可以度量(有多少功能点,有多少功能项);
b.使得独立的功能点其对应的所有的处理分支可以度量;
c.使得该系统需要测试的业务场景可以度量;
2、把不明确的需求-----转变为------明确的需求
明确其功能点对应的输出、处理和输出;
3、把不能度量的需求----转变为-----可度量的需求
a.度量测试范围;
b.度量处理分支;
c.度量业务场景;
3、 如何开展测试需求分析?
1、 了解和学习需求
2、 了解软件系统对应的行业-------行业中的名词;行业对应的业务了解行业途径:
a. 找行业相关的人员培训;
b. 学习使用同行业现有的软件;
c. 上网搜索;
d . 翻看用户的工作手册;
3、 按模块去确定软件所包含的功能
4、 将该模块中的每一个功能点形成对应的用例usecase
5、 针对单独的usecase去分析其对应的输入、处理、和输出
6、 分析该功能所对应的actor
7、 明确usecase之间的关系
8、 明确actor之间的关系
9、 明确每个usecase所对应的活动
10、明确需求分析中不同的usecase所组成的业务,形成业务场景活动图
11、分析对应的功能所隐藏的隐式需求
4、 测试需求分析的成果物是什么?
1. 明确测试范围-------功能点
2. 功能的处理过程----单功能点;业务场景的组合
5、 需求分析和测试需求分析的区别?
需求分析:初步设想----原始需求---需求分析---需求规格:输入、处理和输出测试
需求分析:单功能点输入处理输出-----业务流分析----全局---隐式需求挖掘
需求分析和测试需求分析两者的过程是相反的。
需求人员拿到客户的原始需求后,考虑到用户的使用环境,充分挖掘出用户的隐性需求,需求分析就是这样的,客户提出的是显性需求,把两者结合起来的过程就是需求分析,输出的自然是srs,不过这时的srs还没有建基线,它还是可以修改的。
而进行测试需求分析的目的是
1.充分发现需求中不完善的,不足的,不严密的地方。
2.识别出测试的对象。
3.使需求基线化,为需求定个基准(这时就不能更改了),为以后的测试用例设计做指导。