测试架构师之修炼之道
3、测试架构师应该做和不应该做的事情:
需求分析中:
1、理解需求;
2、制定一份总体测试策略,来明确测试范围,测试目标,测试重点,测试难点,测试深度和广度。
理解需求包含以下几点:
1、理解产品的商业价值目标:
公司中的营销和销售人员是如何细分客户?
每个细分市场的关键价值主张是什么?
公司试图增长哪些细分市场?如何增长?
每个市场是谁做出购买决策的?
每个细分市场的主要竞争对手是谁?
公司对此产品的策略主张是什么?所在的产品时如何融入这一战略的?
能够围绕一次内容展开测试活动:
如何验证待测试的产品正确体现了市场价值?
所做的测试策略是否和公德财务销售营销目标一致?
梳理用户的使用场景:
产品有多少种类型的用户,这些用户的业务又是什么,他们如何从你的产品中获取价值?
产品的竞争对手对用户提供了哪些有价值的解决方案?你们之间的差异是什么?
产品所在领域有哪些基本的规范和要求,行业背景有哪些,用户习惯是什么?如完成各类活动的顺序,对活动完成的判断标准和可能重要的决定等?
梳理用户的使用场景,归纳为测试场景:
针对不同类型的用户,分别确定这些用户的行为习惯和关注点;
逐一分析这些用户会如何使用产品,根据分析结果简历产品的拓扑模型,配置模型和流量模型,抽象出典型场景;
确定各个典型场景下的输入,输出(包括正常输入、异常输入、攻击、模拟测试时间的长短等等)
输出产品总体的测试策略
总体测试策略好比测试总纲,帮助整个测试团队明确测试的范围、目标、测试重点难点,测试深度和广度,以及如何安排各种测试活动及测试分层;
测试重点:有产品价值、质量目标、产品实现(新写代码、开源代码、继承代码)和历史测试情况等多项因素综合决定的;
测试难点:是从测试技术的角度来说的,对产品测试验证难易程度的分析;
测试广度:从覆盖的角度,对产品测试进行描述;
测试深度:从测试方法,单运行测试,多运行测试,边界值错误输入等来对测试进行描述;
测试分层:将大目标分解为若干个小目标,逐层测试,逐层评估测试结果,并根据测试结果不断修正测试策略,不仅让测试目标变得可以达到,还让整个测试过程变得可控。
在测试分析与设计中:
测试架构师在团队中的作用:
作为测试团队的技术带头人,是测试分析设计的好手,但不能陷到测试分析和设计中去,更重要的工作是制定阶段测试策略,落实测试设计策略,对测试团队进行测试分析和设计方面的辅导,从整体上来把握测试设计的质量。
1、制定测试阶段策略:
按照分层来确定每个测试层次的测试策略,阶段测试策略也是总体测试策略的进一步分解。
V 模型:单元测试,集成测试,系统测试和验收测试一种分层逻辑;
阶段测试需要关注的内容包括:
每个阶段的测试对象和目标;
每个阶段的出入口准侧(功能稳定是性能测试的一个入口条件);
如何选择测试用例;
2、落实测试设计策略,保证测试设计的质量;
测试设计策略是指软件测试架构师能够按照总体测试策略中确定的测试深度和广度、重点和难点,来组织种鸽测试团队进行测试设计,使得测试用例输出能够和测试策略保持一致;
测试架构师在测试执行中:
关注制定版本测试策略,跟踪测试执行和版本质量评估;
1、制定版本测试策略,主要内容如下:
测试范围和计划相比的偏差
本版本的目标
需要重点关注的内容
测试用例的选择
测试执行顺序
试探性的测试策略
接收测试策略
回归测试策略
探索测试策略
自动化测试策略
2、跟踪测试执行:
跟踪测试用例执行情况
每日缺陷跟踪
整理测试策略
3、版本质量评估和建立版本质量档案
版本质量评估是对每个版本的总结;
测试架构师在测试质量评估中的作用
确认总体测试策略中重要的质量目标是否达到;
对总体测试策略中未达到的一般性的质量目标确定应对措施
进行遗留缺陷分析(注意缺陷修复策略、非必现缺陷的处理)