软件工程之软件测试

来源:互联网 发布:alisql mysql 编辑:程序博客网 时间:2024/06/05 00:54

软件测试很重要,往往大型项目,软件测试占了很大的成本.
高效的测试用例可以降低成本

如何设计测试用例

测试步骤:
1).预测试:
概要设计,详细设计,代码审查
2)测试:
1 单元测试 (模块测试)
2 整体测试 (组合测试)
3 功能测试 (有效性测试)
4 系统测试 ( 确认测试)
5 验收测试
6 安装测试
测试方法:
静态方法
1 调用图
2 数据流图
动态方法
1 白盒子 (逻辑覆盖法)
分析程序的内部逻辑结构,注意选择适当的覆盖标准,设计测试用例,对主要路径进行尽可能多的测试.
不同的覆盖标准

  • 语句覆盖:选择足够的测试用例使得每一个语句至少覆盖一次
  • 判定覆盖:足够多的测试用例,使得每一次都判定都能获得真值和假值
  • 条件覆盖:足够多否测试用例,使得每次判定都能能获得各种可能的结果
  • 判定/条件覆盖:每一个条件取得不同的值,每个判定获得不同结果
  • 条件组合覆盖:每个判定中,条件各出现一次

2 黑盒子
不考虑程序的内部结构与特性,只根据程序功能或程序的外部特性设计测试用例。

  • 等价分类法:
    基本思想:根据程序的IO特性,将程序定义域划分成若干等价类,从等价类中寻找代表性的测试用例.
    有效等价类:对于程序运行有意义的数据
    无效等价类:对于程序运行无意义的数据
    基本步骤:
    1 划分等价类(关键)
    根据程序输入条件(值大小,范围,个数,值的集合和,输入必须如何)划分有效等价类和无效等价类.最终从这些等价类中找到.例如 程序:学生只能选择1-3门课.
    有效等价类: 1-3 门课
    无效等价类:未选择课,选择课多于3个
    2 选择测试用例
    A 尽可能多的覆盖多个有效等价类
    B 一个测试用例只能覆盖一个无效等价类
    C 为每个等价类编号
  • 边值分析法
    选择有效类边界值进行测试
    1 输入有效等价类值范围
    2 输入输出有效等价类的个数范围
    3 值域的值边界
    4 输入输出有序集边界
  • 错误分析法
    根据逻辑猜测可能会出现哪些错误,然后输入值测试
  • 因果推测法
    将程序抽象为逻辑图,输入是因,输出是果进行测试

    一 模块测试(单元测试)
    测试内容
    二 整体测试(组合测试 集成测试)
    主要测试模块间连通.
    ①确定模块组装方案,将经过测试的模块组装为一个完整的系统。组装方案分为渐增式及非渐增式。
    ②测试方法以黑盒法为主,按照组装方案进行
    测试。
    三 功能测试
    这里写图片描述
    四 系统测试
    将经过确认测试的软件,与计算机硬件、外设、支持软件等一起,在实际运行环境下测试。
    五 验收测试
    验收测试是以用户为主的测试。软件工程课程设计的验收测试安排在第18周进行。
    1.步骤
    (1)由课题组根据测试用例,自己演示系统所有功能。
    (2)由教师进行测试。