软件评测师笔记(三)—— 软件测试
软件测试的对象
程序、数据、文档,跟人没有关系
测试用例
要设计有效的功能测试用例,应该做到
1、测试用例应该100%地覆盖测试业务需求
2、利用场景法模拟核心业务流程的正确执行
3、利用场景法设计测试用例时,往往是一个业务流程需要多条验证数据
4、利用边界值法设计测试用例,能够验证输入值的便捷处理是否正确
常见系统测试主要内容
1、恢复测试,测试系统容错能力
2、安全性测试
3、压力测试
4、性能测试
5、可靠性测试
6、安装测试
逻辑覆盖法
1、语句覆盖:每一条可执行语句
2、判定覆盖:每个判定至少有一次真,一次假
3、条件覆盖:每个判断的每个条件可能取值至少执行一次
4、判定/条件覆盖:每个判定的每个条件取得各种可能的结果
5、条件组合:使得每个判断的所有可能的条件取值组合至少执行一次,满足条件组合覆盖的测试用例一定满足判定覆盖、条件覆盖和判定/条件覆盖
软件质量模型特性
1、功能性
2、适合性
3、准确性
4、互操作性
5、安全性
6、依从性
因果图法
1、适用于必须描述多种条件的组合
2、需要转换成判定表,然后再设计测试用例
条件组合覆盖测试用例数
2^条件数
单元测试包含模块
接口测试,局部数据结构测试,路径测试,错误处理测试,边界测试
集成测试的集成方式
1、一次性集成
2、自底向上
3、自顶向下
4、混合式
5、Big-Bang
集成测试
1、需要设计所需的驱动模块和桩模块
2、驱动模块:相当于所测函数的主程序
3、桩模块:用来模拟被测模块工作过程中所调用的模块,它们只进行很少的数据处理
如何划分测试阶段
- 按开发阶段划分:单元测试、集成测试、系统测试、确认测试、验收测试
- 按测试技术划分:白盒测试、黑盒测试、灰盒测试
- 按实施组织划分:开发方测试、用户测试、第三方测试
MTTF
描述可靠性的指标
标准复合型测试
1、数据内容标准
2、通信协议
3、开发接口
4、信息编码
文档测试
1、面向读者应该定位要明确,不能一个文档面向所有级别
2、检查软件返回结果跟文档描述是否一致属于一致性方面
场景测试法
基本流+备用流
测试停止准则
1、测试超过预定时间
2、执行完了所有用例没有发现新的bug
3、单位时间内查出的bug数低于预定值
4、查出一定预定数量的bug