1.测试设计与架构
1.1.测试分析及设计流程
图1 测试分析及设计流程图
1.1.1.从需求演到功能特性和需求场景
从需求分析产品的功能特性,梳理性能指标、设计约束条件和使用保障要求。
从需求分析产品的需求场景,分析核心是3个维度的梳理,角色、场景、方案。(哪类角色用户,在某种场景下产生了该需求,能够满足该需求、解决该问题的方案、途径有哪些?对应的具体流程是怎样的?)
分析需求并不只是一类用户在单一场景下产生的需求,可能是各类用户在很多场景下都普遍存在的,所以需要通过脑图的形式梳理出来具体的需求场景。
1.1.2.从功能特性和需求场景到测试方案
针对功能特性和需求场景,每一个功能特性和需求场景融入测试数据、测试条件,再加上通过等价类划分、边界值等分析方法获得的测试数据,这就形成了测试方案。
测试方案的目的是实现内部的测试目标沟通以及服务于对外的评审。
1.1.3.功能点判断
先设计主要功能的测试用例,再设计次要功能的测试用例。
1.1.4.从测试方案到测试用例
编写用例不等于把测试方案进行复制粘贴,需要对方案进行总结,在编写用例的同时需要思考测试方案的欠缺。
因测试用例则是测试执行的详细的指导,需要按照测试用例编写的规范尽可能的满足测试可执行性。
1.2.测试设计需要考虑的因素
在考虑背景、需求、技术知识、团队、进度、风险因素且穷举所有的测试场景或组合难度较大的前提下,设计测试用例时,需要抓住测试的风险和重点,并遵循由点到面的规则上进行充分分析与设计,才能达到理想的覆盖率。
因素 | 内容 |
---|---|
测试需求目标 | 包括功能性测试与性能、接口集成测试目标。 |
用户实际使用的场景 | 站在用户的角度去思考产品的每一个特性,确保为测试用例建立正确的判断依据。 |
输入文档 | 测试用例设计的主要输入文档,如需求说明书与产品设计,会影响到测试用例的设计。这些文档的描述方法、格式和详细程度需要进行细致的评审。 |
测试的方法 | 测试用例具体设计方法,详见4.4章节。 |
被测试的对象 | 不同阶段的测试用例的侧重点不同,测试设计需从不同的侧面去发现系统的弱点或薄弱环节。 |
1.3.测试设计的基本原则
测试用例不是简单地复制产品需求、功能设计规格说明书等,而是通过思考和优化设计出来的。测试是基于数据分析的数据流和基于逻辑结构分析的控制流。测试设计方法就是通过测试用例的不断设计、优化,最终达到控制流和数据流的覆盖。
1.3.1.薄弱环节、边界点判断
1.3.2尽量找出系统大的薄弱环节、边界点,对特殊的区域进行更多的测试,从而降低测试的风险,达到所设定的测试目标。
1.3.3.优先级判断
1.3.4先设计高优先级测试项的测试用例,再设计低优先级测试项的测试用例。
1.3.5正常异常分支流程判断
针对具体需求,先设计正面的测试用例,再设计异常、非法操作的测试用例&