2018-02-01海盗派测试分析 -读书笔记

海盗派测试分析


海盗派测试分析读书笔记.png

1.了解测试任务

1.1为什么要做KYM

可以问出多少问题
哪些是最好的问题
哪些地方才容易出BUG
    效果:以尽可能少的时间、发现尽可能多的、尽可能重要的BUG
分析风险发生的影响和可能性
收集更多的信息
按风险大小排序选出最高优先级的问题

1.2HOW

CIDTESTD来自启发式测试策略模型
    Customers用户
    Infomation信息
    Developer Relations关系
    Test Team测试团队
    Equipmengt&Tools设备和工具
    Schedule进度
    Test Item测试项
    Deliverables交付件

1.3 怎么做KYM

了解用户
了解项目
了解产品
了解测试任务本身
    是一种Heuristic
重点了解被测对象与质量相关信息,查看已有BUG,翻阅线上反馈

1.4小结

不必拘泥表面形式,据测试上下文
重视过程比结果更重要
不要过度关注细节,15min-2H做一次KYM即可

2.测试覆盖大纲

2.1 TCO是什么

通过测试执行而不是阅读文档方式了解被测对象包含的主要功能点,并用思维导图的形式记录下来

2.2 TCO达成结果

信息提炼
内容重组
    对信息源中提取的信息进行重新组织,以及对于信息源中没有的信息的添加
心中有数

2.3怎么做TCO

提取出有价值的信息
将所提取出有价值的信息进行结构化整理
    系统地图(思维导图)
    过程地图
    对比地图

2.4 TCO实例(SFDIPOT)

S
    structure
    产品是由什么组成的?
F
    function
    产品是做什么的?
D
    data
    产品处理什么数据?
I
    interface
    产品与外部有哪些接口?
P
    Platform
    产品所依赖的东西?
O
    Operation
    产品是怎样被使用的?
T
    Time
    产品与时间相关的任何方面

2.5 MFQ的思路

M
    单功能测试分析与测试设计
F
    功能交互测试分析与测试设计
Q
    质量属性测试分析与测试设计

2.6 什么时候应用TCO

当需要了解测试的整体范围时,或者当对被测对象还不熟悉而想快速地学习了解它时

3.建模

3.1 例子

确定测试对象
确定单功能的边界
单功能拆分
挑选一个单功能建模
确定“M2-业务规则处理”边界
选择MODEL
确定参数(判定表表头)
识别业务规则
判断规则完整性
得出测试条件
M/识别测试条件
    覆盖测试模型
M/用Given-when-Then描述Test Condition

3.2 模型(PPDCS)

P-Process流程
    特点
            流程图表达建模:有多个步骤,各步骤间有一定前后约束关系,所有步骤共同完成一件事情;
            整个过程可能涉及多于1个执行者或触发者
    步骤
            建模(流程图,抓重点)
            设计测试条件(主要流程MF+可选补充流程AF)
            流程图(推荐)
            流程图简单,分支少,覆盖所有路径
            流程图复杂,分支多,流程图无法全部包含,采用“主要流程MF+可选补充流程AF”的方式覆盖模型
            Given-When-Then描述测试条件
P-Parameter参数
    应用条件
            特点
            需求中经常是“多个参数”占主导地位,而没有太多“流程”上的处理
            需求规格的描述中含有多条规则,每个规则由多个参数的不同取值组合而成
            需求明显区分多个参数或变量时可用此建模
    应用步骤
            建模
            判定表、判定树,因果图等测试设计技术来画MODEL
            判定表
            条件 桩
            动作桩
            设计测试条件
            自然描述法构造的判定表MODEL,每行规则就是一个测试条件
            判定树MODEL,从根节点到每个叶子节点的路劲就是一条规则(测试条件)
D-data数据
    应用条件
            特点
            不像P-Parameter,数据之间明显的“各种组合关系从而构成某个规则”各数据之间逻辑上的关系是相互比较独立的
            各数据的取值之间有可能存在一些约束关系
            需求紧紧围绕数据,每个数据有明确的取值范围时,考虑用此建模
    应用步骤
            建模
            等价类、边界值
            设计测试条件
            覆盖等价类(边界值)表格
            4个覆盖方式
            Weak Normal
            Strong Normal
            Weak Robust
            Strong Robust
C-Combination组合
    应用条件
            特点
            因子个数多
            每个因子有多种可能的状态
            因子之间有可能存在一些逻辑约束关系
            需求紧紧围绕“因子”每个因子不同取值,考虑此建模
    应用步骤
            建模
            因子-状态表 表达模型
            设计测试条件
            使用PICT工具得出测试条件的过程就是编写一个脚本,将各个因子和状态,以及约束关系用类似编程的方式体现出来
S-State状态
    应用条件
            特点
            涉及多种状态,最好是针对同一个对象的多个状态,否则把多个对象的多个状态都放在一个模型中表达,容易引起混淆
            各个状态之间可以由于某种事件的发生相互转换
            需求设计多种状态时,考虑此模型
    应用步骤
            状态图表达模型
            设计测试条件
            覆盖状态图

3.3 如何选用PPDCS

关注触发词语
    用逻辑倾听的方式寻找需求中与“流程”、“规则”、“数据”、”状态“相对应的触发词语
    倾听到名字,可能是DATA数据
    倾听到一串名字和动作,可能是规则
    倾听到一系列事件,可能是流程
抓住核心功能
    蒸馏信息
            信息过滤与剔除
    忽略干扰
尝试不同特征
    接触时下意识的从MFQ三个维度和PPDCS五个特征去分析和思考
围绕既定目标
    避免单功能边界,忘记核心功能错误方法
            寻找单功能PPDCS主导特征前,给单功能起名,采用TSP Heuristic
            T-Topic探索性测试Session主题
            S-Scope是这个Session的范围
            P-Purpose本次探索性测试希望达成目的
            画一张简单的功能结构图,将各个功能之间的关系体现出来
    测试分析应注意区分

3.4 建模过程精简

描述单功能
识别PPDCS主导特征
    Test Heuiristic
            寻找Triggers
基于主导特征建模
    画MODEL
基于MODEL得出测试条件

4. 测试设计

4.1 什么是测试设计

得出具体的测试实例以达成这个测试目标的过程

4.2 为什么要做测试设计

首先要识别测试条件中可变化的部分,即变量
然后为每个变量确定具体的取值
最后得出可以直接拿来执行的测试实例

4.3 怎么做测试设计

识别变量
变化数据
选取数据
    兼顾测试的多样化原则
得出测试实例

5. 测试执行

测试的质量不能过分依赖测试分析活动,测试执行的质量不容小觑

5.1 tests与testing

tests是我们设计出来的写成文字的东西
testing挖掘未知的测试信息的行为

5.2 测试反馈环

TA做明智的选择
TS-TA-TE测试反馈环(协作过程)
    主动收集信息 、尽早提供反馈
    TS基于风险不断调整测试策略
    TE收集信息提供反馈

5.3 更早、更快、更频繁

更早:尽早地开始测试分析、尽早地开始了解需求、尽早与客户沟通,尽早验证testing ideas、尽早地考虑如何测试、尽早地提供测试反馈(代码级、接口级、Story级、特性级、系统级)、尽早地开展验收测试、尽早地发现缺陷、尽早地预防缺陷等
更快:在非常高效的探索性测试中,上一个测试结果可以立即为下一个测试提供反馈,决定下一个测试的策略和内容,这种TS-TA-TE测试反馈环是实时发生的
更频繁:测试对项目的反馈更加频繁,风险的识别和更新更频繁、测试优先级和测试策略调整更频繁,这些都可以很好地应对更频繁的需求变化

5.4 快速测试分析和测试设计

KYM:识别我本次Session任务,包括主题、范围和母的
TCO:边探索边绘制一张测试覆盖地图,了解有哪些分支需要或可以去探索
Try:不断地试错,收集更多的反馈信息
TA(持续测试分析):逐步了解问题域,在大脑中建立问题域模型,基于反馈和已有的经验,分析当前的形势,并快速设计下一步要采取的动作
TS(不断调整测试策略):不断地识别风险,并根据风险的变化及时调整测试策略
TD(快速的测试设计):基于TS和TA的结果,快速开展测试设计,选择一个合适的珠子与合适的位置
Observe(观察):每摆放一个珠子后,都观察最新的局势变化
Communicate(沟通协作):必要的时候与周边的人沟通交流
记录
交替处理事务:分析、执行、记录、交流等各种活动交替进行
自我管理
回顾

5.5 测试广度与测试深度

测试深度图
    横轴:随着时间推移覆盖到的测试点
    纵轴:这个测试点上的测试深入程度
    BUG的发现与测试深度紧密相关
需要基于上下文考虑测试广度与测试深度的平衡问题
基于风险的测试时最重要的测试策略
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342

推荐阅读更多精彩内容