一、软件测试的目的
基于客户真实需求,提前发现系统设计、运行问题,降低系统給客户带来的使用风险。
二、需具备的技能
1、原则性
- 测试基准为需求,并非人;
- 测试过程有章可循、有规可依、有据可查;
- 测试结果客观、真实;
- 测试人员是问题的提交者,而不是问题的解决者。
2、文档梳理力
- 需求文档;
- 接口文档;
- 过程资产文档;
3、用例设计技巧
测试用例的含义:
为某个需求目标,而设计的一组由测试输入、执行条件、预期结果组成的案例
高质量用例的特征:
- 简单明了
- 最少的用例覆盖最多的需求
- 用例覆盖所有需求
- 用例设计技巧齐全
用例设计技巧
- 等价类划分法
等价类划分是将所有可能输入的数据划分为不同区域,然后从每个区域选出具有代表性的输入数据进行测试。
一般分为有效等价类,无效等价类。有效等价类是指符合PRD的,输入合理的数据集;无效等价类是指不符合PRD的,输入不合理的数据集。等价类一般以规则类型体现,比如:输入范围、给定某要求、输入的字符类型。
技巧总结:
使用范围:页面单个元素或某同功效的多个元素或接口某参数
技巧思路:
- 边界值分析法
边界值是指取某一数值类型数据的边界进行测试
技巧技巧总结:
常用使用场景:页面某元素输入 或 接口某参数
边界的确认技巧:
上点:边界上的点;
离点:离边界最近的点,开内闭外;
内点:域内任意的点
举例:
0<=x<=10 左上点 0 左离点 -1 右离点 11 右上点 10 内点 5
0<x<10 左上点 0 左离点 1 右离点 9 右上点 10 内点 5
0<=x<10 左上点 0 左离点 -1 右离点 9 右上点 10 内点 5
注意:边界值和等价会出现重合数据,将边界值作为等价类的代表性输入,完成去重即可。
- 因果图法
使用场景:输入场景比较多时,列举各种输入组合。
使用技巧:
1、通常原因用ci、结果用ei标识,节点状态分别用0(不会出现)、1(会出现)表示
2、因果图基本符号:恒等、非、或、与
恒等
若c1=1,则e1=1;若c2=0,则e1=0
非
若c1=1,则e1=0;若c2=0,则e1=1
或
若c1=1,或c2=1 或c3=1,则e1=1
若c1=c2=c3=0,则e1=0
与
若c1=1 且 c2=1,则e1=1;
若c1=0或c2=0,则e1=0;
因果图实现步骤:
1、标识输入输出
2、分析因果关系,画出因果图
3、因果图转化为判定表,根据已知的约束条件,删除不可能出现的输入组合
4、生成相应用例
- 错误推测法
基于经验和直觉推测可能存在的错误,进行针对性测试
- 正交分析法
使用场景:多个页面元素输入或接口参数可以相互组合,采用最小的数据集合获得最大的测试覆盖率。
使用技巧:正交设计助手,进行辅助设计
- 场景法
首先画出完整的业务流程图。分为正常流和异常流两种。‘
正常流: 正常a-正常b-正常c
备选流:正常a-正常a-正常b-异常1
4、浏览器开发工具的常用使用
- 网络
查看接口信息;
模拟浏览器弱网 - 存储
查看存储信息
5、良好的bug书写习惯
有效性
- 明确bug类型,一般UI问题、功能问题、崩溃问题;
- 需求是否明确;
- 前置条件是否满足;
- 输入参数是否清楚;
- bug是否唯一;
标题:
- 简明扼要的阐述问题本质,写明在哪个页面执行什么操作出现什么现象
- 页面元素如按钮名称、页面名称使用" "
- 最后可以期望结果结尾,即prd中描述的相关操作结果。
前置条件:明确指出bug在什么样的场景下出现的
复现步骤:
- 按照自己实际操作步骤写;
- 页面切换使用->连接;
- 页面名称、提示语、按钮等使用“”
附件:文件名与标题呼应
6、过程资产总结
业务总结文档:基于PRD、接口文档,整合系统特性规则性文档
三、测试与产品、开发关系
产品经理:客户需求的解析提交者,疑问需求的解答者,输出的PRD文档更是测试人员进行需求测试的基准
开发人员:需求的具体实现者,开发基准仍是prd文档,任何与prd文档相悖的设计都是错误的。所以测试人员与开发人员的上游同是prd文档,不是产品经理,两者也更不是上下游关系。