软件测试 测试优先的编程

第七章

7.5 软件测试 测试优先的编程

  • 认可测试价值
  • 学会两种黑盒测试方法 等价划分边界值分析方法 为模块设计测试用例
  • 可用工具度量一组测试用例对代码的覆盖度

1 软件测试

什么是测试

测试:发现程序中的错误 提高程序正确性的信心

程序正确确认的基本方法:

  • 形式化推理
  • 代码评审
  • 测试

测试是提高软件质量的重要手段

  • 确认是否可达到可用的级别
  • 关注系统某一侧面的质量特性

  • 是否满足需求

  • 是否正确响应所有需求
  • 性能是否可接受
  • 是否可用
  • 可否正确部署安装
  • 是否达到期望
测试分类
  • 单元测试
  • 集成测试
  • 系统测试
  • 回归测试
  • 验收测试
白盒测试 黑盒测试

白盒测试:对程序内部代码结构的测试 只关注代码内部的问题

黑盒测试:对程序外部表现出来的行为的测试 采用两个方法

  • 等价划分
    将程序可能的输入进行分类 划分为不同集合 包括不合法数据
  • 边界值分析方法
    在各个集合中尽量去取用边界极限的测试用例

黑盒测试

测试困难
  • 软件行为在离散输入空间中差异巨大 
    • 大多数正确 少数错误
    • bug出现不遵循特定概率分布
  • 无统计规律可循

2 测试用例

这一部分和其他部分联系紧密 不再赘述

3 测试优先编程

在编码之前写出测试 测试接口功能 测试方法正确性

Specification文档 需求

按照规定的语法编写注释 生成文档 
Sepc

4 单元测试

针对软件的最小单元模型开展测试 隔离各个模块 容易定位错误和调试

  • 模型接口
  • 本地数据结构
  • 所有的正常输出
  • 边界条件
  • 所有的错误处理

猜你喜欢

转载自blog.csdn.net/ywh4214/article/details/80718742